JavaScript is required

Cho đoạn chương trình sau:

public class Test {

public static void main(String[] args) {

int n,k,dem;

for ( k = 10; k <= 12; k++ ) {

dem = 0;

for ( n = 2; n <= k; n++ ) {

if ( k%n==2) {

dem++;

}

if (dem > 1)

System.out.print(k);

}

}

}

}

Đoạn chương trình trên cho kết quả là bao nhiêu?

A.

A.10

B.

B.468910

C.

C.8910

D.

D.1012

Trả lời:

Đáp án đúng: D


Đoạn chương trình in ra giá trị của k nếu biến đếm dem lớn hơn 1. - Với k = 10, vòng lặp bên trong chạy từ n = 2 đến 10. Điều kiện k%n == 2 chỉ đúng khi n = 4 và n = 8. Khi đó dem = 2 > 1, chương trình in ra 10. - Với k = 11, vòng lặp bên trong chạy từ n = 2 đến 11. Điều kiện k%n == 2 đúng khi n = 3 và n = 9. Khi đó dem = 2 > 1, chương trình in ra 11. - Với k = 12, vòng lặp bên trong chạy từ n = 2 đến 12. Điều kiện k%n == 2 đúng khi n = 5 và n = 10. Khi đó dem = 2 > 1, chương trình in ra 12. Vậy, chương trình in ra 101112. Không có đáp án nào đúng trong các lựa chọn đã cho.

Câu hỏi liên quan