Cho đoạn chương trình sau:
public class Test {
public static void main(String[] args) {
int n,k,dem;
for ( k = 1; k <= 10; k++ ) {
dem = 0;
for ( n = 2; n <= k; n++ ) {
if ( k%n==0) {
dem++;
}
if (dem > 1)
System.out.print(k);
}
}
}
}
Đoạn chương trình trên cho kết quả là bao nhiêu?
=>=>
Trả lời:
Đáp án đúng: A
Đoạn chương trình duyệt qua các số từ 1 đến 10 (biến k). Với mỗi k, nó kiểm tra xem có bao nhiêu ước số của k trong khoảng từ 2 đến k (biến n). Nếu số lượng ước số (dem) lớn hơn 1, chương trình in ra giá trị của k.
- k = 1: Vòng lặp `n` không chạy vì `n` bắt đầu từ 2 và điều kiện là `n <= k`.
- k = 2: Vòng lặp `n` chạy một lần với n = 2. `2 % 2 == 0`, `dem` trở thành 1. Vì `dem > 1` là sai, không in ra gì.
- k = 3: Vòng lặp `n` chạy hai lần với n = 2 và n = 3.
- n = 2: `3 % 2 != 0`.
- n = 3: `3 % 3 == 0`, `dem` trở thành 1. Vì `dem > 1` là sai, không in ra gì.
- k = 4: Vòng lặp `n` chạy ba lần với n = 2, n = 3 và n = 4.
- n = 2: `4 % 2 == 0`, `dem` trở thành 1.
- n = 3: `4 % 3 != 0`.
- n = 4: `4 % 4 == 0`, `dem` trở thành 2. Vì `dem > 1` là đúng, in ra 4.
- k = 5: Vòng lặp `n` chạy bốn lần với n = 2, n = 3, n = 4 và n = 5.
- n = 2: `5 % 2 != 0`.
- n = 3: `5 % 3 != 0`.
- n = 4: `5 % 4 != 0`.
- n = 5: `5 % 5 == 0`, `dem` trở thành 1. Vì `dem > 1` là sai, không in ra gì.
- k = 6: Vòng lặp `n` chạy năm lần với n = 2, n = 3, n = 4, n = 5 và n = 6.
- n = 2: `6 % 2 == 0`, `dem` trở thành 1.
- n = 3: `6 % 3 == 0`, `dem` trở thành 2. Vì `dem > 1` là đúng, in ra 6.
- k = 7: Vòng lặp `n` chạy sáu lần với n = 2, n = 3, n = 4, n = 5, n = 6 và n = 7.
- n = 2: `7 % 2 != 0`.
- n = 3: `7 % 3 != 0`.
- n = 4: `7 % 4 != 0`.
- n = 5: `7 % 5 != 0`.
- n = 6: `7 % 6 != 0`.
- n = 7: `7 % 7 == 0`, `dem` trở thành 1. Vì `dem > 1` là sai, không in ra gì.
- k = 8: Vòng lặp `n` chạy bảy lần với n = 2, n = 3, n = 4, n = 5, n = 6, n = 7 và n = 8.
- n = 2: `8 % 2 == 0`, `dem` trở thành 1.
- n = 3: `8 % 3 != 0`.
- n = 4: `8 % 4 == 0`, `dem` trở thành 2. Vì `dem > 1` là đúng, in ra 8.
- k = 9: Vòng lặp `n` chạy tám lần với n = 2, n = 3, n = 4, n = 5, n = 6, n = 7, n = 8 và n = 9.
- n = 2: `9 % 2 != 0`.
- n = 3: `9 % 3 == 0`, `dem` trở thành 1.
- n = 4: `9 % 4 != 0`.
- n = 5: `9 % 5 != 0`.
- n = 6: `9 % 6 != 0`.
- n = 7: `9 % 7 != 0`.
- n = 8: `9 % 8 != 0`.
- n = 9: `9 % 9 == 0`, `dem` trở thành 2. Vì `dem > 1` là đúng, in ra 9.
- k = 10: Vòng lặp `n` chạy chín lần với n = 2, n = 3, n = 4, n = 5, n = 6, n = 7, n = 8, n = 9 và n = 10.
- n = 2: `10 % 2 == 0`, `dem` trở thành 1.
- n = 3: `10 % 3 != 0`.
- n = 4: `10 % 4 != 0`.
- n = 5: `10 % 5 == 0`, `dem` trở thành 2. Vì `dem > 1` là đúng, in ra 10.
Vậy kết quả là 468910.