# Câu 19 Phần I · Đề chính thức Tin học 2026 (Bộ GD&ĐT) – mã đề 0531

Tin học · 2026 · Đề chính thức Bộ GD&ĐT · mã đề 0531 · 50 phút  
Đáp án đối chiếu với file đáp án của Bộ GD&ĐT.  
Cập nhật: 27/10/2026. Nguồn: PrepMoon (https://prepmoon.com).

Lựa chọn ngôn ngữ lập trình Python hoặc C++ để tìm hiểu đoạn chương trình sau:

Python:

```python
x, a, b = 1, 4, 8
while (a < b):
    if (x < a): x = x * a
    else: x = x // a
    a = a + 1
print(x)
```

C++:

```cpp
int x = 1, a = 4, b = 8;
while (a < b) {
    if (x < a) x = x * a;
    else x = x / a;
    a = a + 1;
}
cout << x;
```

Sau khi thực hiện đoạn chương trình trên, giá trị nào sau đây được hiển thị trên màn hình?

- **A.** 21.
- **B.** 20.
- **C.** 3.
- **D.** 4.

**Đáp án đúng:** A

**Lời giải:**

Lần theo vòng lặp với b = 8:

– a = 4: x = 1 \< 4 nên x = 1 × 4 = 4.

– a = 5: x = 4 \< 5 nên x = 20.

– a = 6: x = 20 ≥ 6 nên x = 20 // 6 = 3 (trong C++, x / a với hai số nguyên cũng là phép chia lấy phần nguyên).

– a = 7: x = 3 \< 7 nên x = 21.

– a = 8: vòng lặp dừng.

In ra 21. Chọn A.

Cả đề, có đáp án và lời giải: https://prepmoon.com/de-thi/tin-hoc/de-chinh-thuc-tin-hoc-2026-bo-gd-dt-ma-de-0531  
Trang câu hỏi: https://prepmoon.com/de-thi/tin-hoc/de-chinh-thuc-tin-hoc-2026-bo-gd-dt-ma-de-0531/phan-1-cau-19
