Tính số X trong câu lệnh for

using namespace std;

void main()
{
int x,y;
for (x = 0; x < 10; x++)
for (y = 5; y > 0; y–) cout << “x”<< " ";
system(“pause”);
}

Em có chạy chương trình này mà không biết tại sao nó ra tận 50 chữ X. có ai giải thích cho em được không. Em nghĩ là 5 chữ x là thôi vì điều kiện for (y = 5; y > 0; y–) chỉ chạy được có 5 lần là hết và in ra 5 chữ x còn for (x = 0; x < 10; x++) chạy được 10 lần nhưng mà nó sẽ in ra x bởi vì bước for (y = 5; y > 0; y–) quyết định điều đó. Có đúng không ạ

Bạn đọc bài ở link này giải thích nested for loop có hình mình họa này.
http://mathbits.com/MathBits/CompSci/looping/nested.htm

50 X là phải rồi, for trong for không thấy sao trời
cái for thứ 2 in ra 5x, còn cái for thứ nhất chạy 10 lần cái for thứ 2

X = 0: in ra X X X X X do dong for cua Y la 5 lan.
X = 1: in them X X X X X

X = 9 in them X X X X X

vay tong cong co 10 * 5 = 50 chu X :sunglasses:

bạn thật là kiên nhẫn khi đếm 50 chữ X :scream_cat:

Cảm ơn các bạn đã giúp mình. Cuối cùng mình cũng nhận ra :sweat_smile:

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