Nhờ giải thích code C

void CreatePeak()
{
    for(int i=1; i<=n; i++)
    {
        char kt[100];
        setcolor(2);// mau ve hien tai la mau xanh
        circle(x[i-1],y[i-1],20);// ve duong tron tam(x,y) ban kinh 20
        setfillstyle(15,2);// mau to 15 va mau to xanh la
        floodfill(x[i-1], y[i-1], 2);// to mau mot vung kin chua diem x,y va mau c trung voi setfillstyle
        settextstyle(0,0,2);// font, huong, co chu
        setcolor(0);// mau chu
        //snprintf(kt, sizeof(kt), "%d", i);
        itoa(i,kt,10); 
        outtextxy(x[i-1]-8, y[i-1]-8,kt);// viet van ban "kt" tai vi tri x,y
    }
}
void CreateLink()
{
    for(int i=1; i<=n; i++)
    {
        for(int j=i; j<=n; j++)
        {
            if(A[i][j]==1)
            {
                setcolor(4);// mau duong ve la mau do
                setlinestyle(0,0,2);// kieu duong, mau to va do dam
                line(x[i-1],y[i-1],x[j-1],y[j-1]);// ve duong tu x,y den x1,y1
            }
        }
    }
}
void Graphic()
{
    initwindow(900,700);
    setbkcolor(7);// hinh nen mau xam
    cleardevice();
    CreatePeak();
    CreateLink();
    getch();
}

Cho em hỏi cái void creatpeak với ạ cái chỗ tạo đường tròn í ạ

Trong code comment tiếng Việt rồi mà bạn còn muốn giải thích gì nữa?

2 Likes

cho em hỏi là sao em circle(x,y,20) như thế này thì báo lỗi ạ mà cứ phải i-1 ạ?

Cái này là kiến thức cơ bản của C thôi.

Chôm ví dụ sào ruộng tử một ai đó trên DNH…

Ví dụ có một chỗ phân đất ruộng thành các sào ruộng đánh số từ 0, 1, 2, 3,… Giả sử em mua 100 sào ruộng từ sào 0 đến sào 99. Tất nhiên là em không có quyền cày cấy trên sào 100 rồi.

2 Likes

outtextxy(x[i-1]-8, y[i-1]-8,kt) thế còn cái này ạ

Tương tự vậy thôi, chỉ khác ở chỗ có thêm mảng y. i duyệt từ 1 đến n thì phải trừ đi 1 thôi.

cái -8 í ạ em hỏi cái đó ạ

Lấy giá trị x[i-1] rồi trừ đi 8 :penguin: vì:

Bạn nên học lập trình C cơ bản trước rồi vào đọc bài viết trên.

1 Like

Em cảm ơn nhé bài của thầy nhuộm em đọc rồi ạ.

a ơi cho em hỏi cái itoa(i,kt,10); là sao ạ chuyển đổi từ số sang chuỗi ạ

Thử đọc article dưới đây xem cậu (cho hàm itoa):
https://www.cplusplus.com/reference/cstdlib/itoa/

char * itoa ( int value, char * str, int base );

Hàm này chuyển từ số value sang chuỗi str sử dụng hệ cơ số base.
Lưu đồ thuật toán dưới đây liên quan tới bài này phải không cậu?

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?