Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Giải cứu C# ét o ét

14:31 26-08-2024 153 lượt xem 2 bình luận 14:53 26-08-2024
int Vertical = 20;

int Horizontal = 50;

char drawChar = '*';

char insideChar = ' ';

int countLoopVertical = 0;

int countLoopHorizontal = 0;

while (countLoopVertical < Vertical)

@ { countLoopHorizontal = 0;

while (countLoopHorizontal < Horizontal)

{

if (countLoopVertical % (Vertical - 1) == 0 ||

((countLoopVertical % (Vertical - 1) != 0) &&

(countLoopHorizontal % (Horizontal - 1) == 0)))

{

Console.Write(drawChar);

}

else

{

Console.Write(insideChar);

@countLoopHorizontal++;

}

}

{

Console.WriteLine();

countLoopVertical++;

}

Console.ReadKey();

}

Hiện tại em đang không hiểu 2 dòng em để dấu @. Tại sao tăng nó lên 1 đơn vị và lại gán cho nó bằng 0??.

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Kteam SuperAdmin đã bình luận 15:00 26-08-2024

Dòng countLoopHorizontal = 0; 

  • Mỗi khi bắt đầu vẽ một hàng mới, biến countLoopHorizontal được đặt lại về 0. Điều này có nghĩa là ta bắt đầu vẽ từ cột đầu tiên của hàng đó.

Dòng countLoopHorizontal++;:

  • Sau khi vẽ xong một cột, biến countLoopHorizontal tăng lên 1. Điều này có nghĩa là ta chuyển sang vẽ cột tiếp theo.

Bạn debug đi cho hiểu logic vẽ

Câu hỏi mới nhất