Cho đoạn chương trình sau:
class Test {
public static void main(String[] args) {
int k,n;
for (k=1;k<100;k++) {
if ((k%3==0) && (k%7==0))
System.out.print(k+” “)
}
}
}
Đoạn chương trình trên in ra kết quả bao nhiêu?
100;k++)>
Trả lời:
Đáp án đúng: C
Đoạn chương trình trên sử dụng vòng lặp `for` để duyệt các số từ 1 đến 99. Bên trong vòng lặp, có một câu lệnh `if` kiểm tra xem số hiện tại `k` có đồng thời chia hết cho 3 và 7 hay không (tức là chia hết cho 21). Nếu điều kiện này đúng, chương trình sẽ in ra số `k` cùng với một khoảng trắng.
Vậy, chương trình sẽ in ra các số chia hết cho 21 trong khoảng từ 1 đến 99. Các số đó là: 21, 42, 63, 84.
Do đó, đáp án đúng là A.
Câu hỏi liên quan
Lời giải:
Đáp án đúng: C
Đoạn mã Java này có một vòng lặp `while` bên ngoài và một vòng lặp `for` bên trong. Ta sẽ theo dõi giá trị của `n` và `k` trong quá trình thực thi:
1. Khởi tạo: `n = 12`, `k = 2`
2. Vòng lặp `while` (k < n): Điều kiện `2 < 12` đúng, nên vòng lặp `while` được thực thi.
3. Vòng lặp `for` (k = 2; k <= n; k++):
- `k = 2`: Kiểm tra `n % k == 2` (tức là `12 % 2 == 2`). Điều này sai (vì `12 % 2 == 0`).
- `k = 3`: Kiểm tra `n % k == 2` (tức là `12 % 3 == 2`). Điều này sai (vì `12 % 3 == 0`).
- `k = 4`: Kiểm tra `n % k == 2` (tức là `12 % 4 == 2`). Điều này sai (vì `12 % 4 == 0`).
- `k = 5`: Kiểm tra `n % k == 2` (tức là `12 % 5 == 2`). Điều này đúng!
- In ra `k` (tức là 5).
- `n` được gán bằng `n / k` (tức là `n = 12 / 5 = 2` - vì là số nguyên nên kết quả là 2).
- `break`: Thoát khỏi vòng lặp `for`.
4. Quay lại vòng lặp `while` (k < n): Điều kiện `2 < 2` là sai. Do đó, vòng lặp `while` kết thúc.
Vậy, kết quả in ra là 5.
1. Khởi tạo: `n = 12`, `k = 2`
2. Vòng lặp `while` (k < n): Điều kiện `2 < 12` đúng, nên vòng lặp `while` được thực thi.
3. Vòng lặp `for` (k = 2; k <= n; k++):
- `k = 2`: Kiểm tra `n % k == 2` (tức là `12 % 2 == 2`). Điều này sai (vì `12 % 2 == 0`).
- `k = 3`: Kiểm tra `n % k == 2` (tức là `12 % 3 == 2`). Điều này sai (vì `12 % 3 == 0`).
- `k = 4`: Kiểm tra `n % k == 2` (tức là `12 % 4 == 2`). Điều này sai (vì `12 % 4 == 0`).
- `k = 5`: Kiểm tra `n % k == 2` (tức là `12 % 5 == 2`). Điều này đúng!
- In ra `k` (tức là 5).
- `n` được gán bằng `n / k` (tức là `n = 12 / 5 = 2` - vì là số nguyên nên kết quả là 2).
- `break`: Thoát khỏi vòng lặp `for`.
4. Quay lại vòng lặp `while` (k < n): Điều kiện `2 < 2` là sai. Do đó, vòng lặp `while` kết thúc.
Vậy, kết quả in ra là 5.
Lời giả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.
- 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.
Lời giải:
Đáp án đúng: A
Đoạn chương trình in ra các hợp số từ 1 đến 10.
Giải thích:
Vòng lặp ngoài `for ( k = 1; k <= 10; k++ )` duyệt các số từ 1 đến 10.
Vòng lặp trong `for ( n = 3; n <= k; n++ )` kiểm tra xem `k` có chia hết cho một số `n` nào đó trong khoảng từ 3 đến `k` hay không.
Biến `dem` đếm số lượng ước của `k` trong khoảng từ 3 đến `k`. Nếu `dem > 1`, tức là `k` có ít nhất hai ước trong khoảng này, thì `k` được in ra. Các số có từ hai ước trở lên (ngoài 1 và chính nó) là hợp số. Số 1 không phải là hợp số cũng không phải là số nguyên tố.
Ví dụ: Khi k = 4, vòng lặp trong sẽ chạy với n = 3 và n = 4. Khi n = 4, 4%4 == 0, dem = 1. Vì dem không lớn hơn 1, nên 4 không được in ra ở vòng lặp này.
Khi k = 6, vòng lặp trong sẽ chạy với n = 3, 4, 5, 6. Khi n = 3, 6%3 == 0, dem = 1. Khi n = 6, 6%6 == 0, dem = 2. Vì dem > 1, nên 6 được in ra.
Vậy chương trình in ra các hợp số từ 1 đến 10.
Giải thích:
Vòng lặp ngoài `for ( k = 1; k <= 10; k++ )` duyệt các số từ 1 đến 10.
Vòng lặp trong `for ( n = 3; n <= k; n++ )` kiểm tra xem `k` có chia hết cho một số `n` nào đó trong khoảng từ 3 đến `k` hay không.
Biến `dem` đếm số lượng ước của `k` trong khoảng từ 3 đến `k`. Nếu `dem > 1`, tức là `k` có ít nhất hai ước trong khoảng này, thì `k` được in ra. Các số có từ hai ước trở lên (ngoài 1 và chính nó) là hợp số. Số 1 không phải là hợp số cũng không phải là số nguyên tố.
Ví dụ: Khi k = 4, vòng lặp trong sẽ chạy với n = 3 và n = 4. Khi n = 4, 4%4 == 0, dem = 1. Vì dem không lớn hơn 1, nên 4 không được in ra ở vòng lặp này.
Khi k = 6, vòng lặp trong sẽ chạy với n = 3, 4, 5, 6. Khi n = 3, 6%3 == 0, dem = 1. Khi n = 6, 6%6 == 0, dem = 2. Vì dem > 1, nên 6 được in ra.
Vậy chương trình in ra các hợp số từ 1 đến 10.
Lời giải:
Đáp án đúng: B
Đoạn chương trình trên thực hiện một vòng lặp `while` với điều kiện `j < 3`. Bên trong vòng lặp `while`, biến `k` tăng lên mỗi lần lặp. Một vòng lặp `for` được sử dụng để đếm số lượng ước của `k` (ngoại trừ 1 và chính nó). Nếu `k` có đúng một ước (tức là chỉ chia hết cho 1 và chính nó, hay nói cách khác, `k` là số nguyên tố), thì `k` được in ra và `j` tăng lên.
Bước 1: k = 1, dem = 0. Vòng for không chạy (n=2;n<=1). if(dem==1) là sai
Bước 2: k = 2, dem = 0. Vòng for chạy n=2, 2%2==0, dem = 1. if(dem==1) là đúng, in ra 2, j=1.
Bước 3: k = 3, dem = 0. Vòng for chạy n=2, 3%2!=0, n=3, 3%3==0, dem = 1. if(dem==1) là đúng, in ra 3, j=2.
Bước 4: k = 4, dem = 0. Vòng for chạy n=2, 4%2==0, dem = 1, n=3, 4%3!=0, n=4, 4%4==0, dem=2. if(dem==1) là sai
Bước 5: k = 5, dem = 0. Vòng for chạy n=2, 5%2!=0, n=3, 5%3!=0, n=4, 5%4!=0, n=5, 5%5==0, dem = 1. if(dem==1) là đúng, in ra 5, j=3. Vòng while kết thúc.
Vậy, kết quả in ra là 2 3 5.
Bước 1: k = 1, dem = 0. Vòng for không chạy (n=2;n<=1). if(dem==1) là sai
Bước 2: k = 2, dem = 0. Vòng for chạy n=2, 2%2==0, dem = 1. if(dem==1) là đúng, in ra 2, j=1.
Bước 3: k = 3, dem = 0. Vòng for chạy n=2, 3%2!=0, n=3, 3%3==0, dem = 1. if(dem==1) là đúng, in ra 3, j=2.
Bước 4: k = 4, dem = 0. Vòng for chạy n=2, 4%2==0, dem = 1, n=3, 4%3!=0, n=4, 4%4==0, dem=2. if(dem==1) là sai
Bước 5: k = 5, dem = 0. Vòng for chạy n=2, 5%2!=0, n=3, 5%3!=0, n=4, 5%4!=0, n=5, 5%5==0, dem = 1. if(dem==1) là đúng, in ra 5, j=3. Vòng while kết thúc.
Vậy, kết quả in ra là 2 3 5.
Lời giải:
Đáp án đúng: C
Đoạn chương trình trên in ra 3 số nguyên tố đầu tiên.
Giải thích:
- `int k=0, n, dem, j=0;`: Khai báo các biến k, n, dem, j kiểu số nguyên, khởi tạo k=0 và j=0.
- `while(j<3)`: Vòng lặp while chạy cho đến khi j = 3. Biến j được sử dụng để đếm số lượng số nguyên tố đã in.
- `k++;`: Tăng giá trị của k lên 1 trong mỗi lần lặp của vòng lặp while.
- `dem=0;`: Khởi tạo biến dem = 0. Biến dem được sử dụng để đếm số lượng ước của k (không kể 1 và chính nó).
- `for(n=2; n<=k; n++)`: Vòng lặp for chạy từ n=2 đến n=k.
- `if(k%n==0) dem++;`: Nếu k chia hết cho n, thì tăng biến dem lên 1.
- `if(dem==1)`: Nếu dem = 1, tức là k chỉ có một ước (ngoài 1 và chính nó), suy ra k là số nguyên tố.
- `System.out.print(k+" ");`: In giá trị của k ra màn hình, kèm theo một khoảng trắng.
- `j++;`: Tăng giá trị của j lên 1. Như vậy, chương trình sẽ in ra 3 số nguyên tố đầu tiên (2, 3, 5).
Khi k = 2, vòng lặp for chạy từ 2 đến 2. Khi đó, 2%2 == 0, nên dem=1. Vì dem=1, in ra 2. j=1
Khi k = 3, vòng lặp for chạy từ 2 đến 3. Khi đó, 3%2 != 0, 3%3 == 0, nên dem=1. Vì dem=1, in ra 3. j=2
Khi k = 4, vòng lặp for chạy từ 2 đến 4. Khi đó, 4%2 == 0, 4%3 != 0, 4%4 == 0, nên dem=2. Vì dem!=1, không in ra.
Khi k = 5, vòng lặp for chạy từ 2 đến 5. Khi đó, 5%2 != 0, 5%3 != 0, 5%4 != 0, 5%5 == 0, nên dem=1. Vì dem=1, in ra 5. j=3
Vòng lặp while kết thúc vì j=3.
Giải thích:
- `int k=0, n, dem, j=0;`: Khai báo các biến k, n, dem, j kiểu số nguyên, khởi tạo k=0 và j=0.
- `while(j<3)`: Vòng lặp while chạy cho đến khi j = 3. Biến j được sử dụng để đếm số lượng số nguyên tố đã in.
- `k++;`: Tăng giá trị của k lên 1 trong mỗi lần lặp của vòng lặp while.
- `dem=0;`: Khởi tạo biến dem = 0. Biến dem được sử dụng để đếm số lượng ước của k (không kể 1 và chính nó).
- `for(n=2; n<=k; n++)`: Vòng lặp for chạy từ n=2 đến n=k.
- `if(k%n==0) dem++;`: Nếu k chia hết cho n, thì tăng biến dem lên 1.
- `if(dem==1)`: Nếu dem = 1, tức là k chỉ có một ước (ngoài 1 và chính nó), suy ra k là số nguyên tố.
- `System.out.print(k+" ");`: In giá trị của k ra màn hình, kèm theo một khoảng trắng.
- `j++;`: Tăng giá trị của j lên 1. Như vậy, chương trình sẽ in ra 3 số nguyên tố đầu tiên (2, 3, 5).
Khi k = 2, vòng lặp for chạy từ 2 đến 2. Khi đó, 2%2 == 0, nên dem=1. Vì dem=1, in ra 2. j=1
Khi k = 3, vòng lặp for chạy từ 2 đến 3. Khi đó, 3%2 != 0, 3%3 == 0, nên dem=1. Vì dem=1, in ra 3. j=2
Khi k = 4, vòng lặp for chạy từ 2 đến 4. Khi đó, 4%2 == 0, 4%3 != 0, 4%4 == 0, nên dem=2. Vì dem!=1, không in ra.
Khi k = 5, vòng lặp for chạy từ 2 đến 5. Khi đó, 5%2 != 0, 5%3 != 0, 5%4 != 0, 5%5 == 0, nên dem=1. Vì dem=1, in ra 5. j=3
Vòng lặp while kết thúc vì j=3.
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy
89 tài liệu310 lượt tải

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin
125 tài liệu441 lượt tải

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông
104 tài liệu687 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán
103 tài liệu589 lượt tải

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp
377 tài liệu1030 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
99 tài liệu1062 lượt tải
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.
77.000 đ/ tháng