01/10/2018, 09:51

Giải thích code vẽ tam giác đều trong C

mình đang tự học C trên kênh của anh Đạt đến bài vòng lặp, anh Đạt đưa ra bài tập vẽ tam giác đều trong C, mình có tham khảo code trên mạng có 1 bài như này:

#include <stdio.h>


int main(int argc, char* argv[])
{
    int i, j, n;

    n = 5;
     
    printf("Ve tam giac deu: 
");

    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n - i; j++)
        {
            printf(" ");
        }
        for(j = 1; j <= i; j++)
        {
            printf(" *");
        }
        printf("
");
    }
 
    return 1;
}

mình không hiểu tại sao làm như này lại ra được tam giác đều, ai giải thích bài code trên dùm mình với được không?

Nguyễn Duy Hùng viết 11:56 ngày 01/10/2018

Bạn thay 2 chỗ printf(" “) và printf(”*") bằng printf("%d ", j) thì sẽ thấy nó thực sự in ra cái gì, rồi từ đó suy luận ra. Vòng for ngoài cùng in ra số dòng của tam giác. Hai vòng for ở trong quy định số ký tự * cần in của mỗi dòng i là bao nhiêu.

X viết 11:55 ngày 01/10/2018

cảm ơn bạn, thật khó với mình nhưng cũng hiểu qua rồi

Bài liên quan
0