Cho bài toán
#include<stdio.h>
// Hoi ket qua cua chuong trinh sau:
// A: 9 6 3
// B: 9 3
// C: Chuong trinh bao loi
// D: 9 6 3 0
int main() {
int n = 10;
while(n > 0) {
if(n % 3 == 0) {
printf("%d ", n);
n -= 3;
}
n--;
}
}
Cách hoạt động
Câu này như vầy:
Mới vào: n = 10;
Sau đó chạy vòng lặp sau:
- Lần lặp 1:
- xét điều kiện: n = 10 > 0 => true -> thực hiện code trong vòng lặp
- n % 3 => 10 % 3 = 1 != 0 => không thực hiện gì trong IF
- n-- = 10-- = 9
- Lần lặp 2:
- xét điều kiện: n = 9 > 0 => true -> thực hiện code trong vòng lặp
- n % 3 => 9 % 3 = 0 == 0 => TRUE => thực hiện CODE trong IF:
- in ra màn hình giá trị n = 9
- n -= 3 => giảm đi 3 đơn vị = 9 - 3 = 6
- n-- = 6-- = 5
- Lần lặp 3:
- xét điều kiện: n = 5 > 0 => true -> thực hiện code trong vòng lặp
- n % 3 => 5 % 3 = 2 != 0 => không thực hiện gì trong IF
- n-- = 5-- = 4
- Lần lặp 4:
- xét điều kiện: n = 4 > 0 => true -> thực hiện code trong vòng lặp
- n % 3 => 4 % 3 = 1 != 0 => không thực hiện gì trong IF
- n-- = 4-- = 3
- Lần lặp 5:
- xét điều kiện: n = 3 > 0 => true -> thực hiện code trong vòng lặp
- n % 3 => 3 % 3 = 0 == 0 => TRUE => thực hiện CODE trong IF:
- in ra màn hình giá trị n = 3
- n -= 3 => giảm đi 3 đơn vị = 3 - 3 = 0
- n-- = 0-- = -1
- Lần lặp 6:
- xét điều kiện: n = -1 > 0 => false -> kết thúc vòng lặp
|