Đọc đoạn mã sau:
11: int i = 1,j = 10;
12: do {
13: if(i>j) {
14: break;
15: }
16: j--;
17: } while (++i <5);
18: System.out.printIn("i = " +i+" and j = "+j);
Kết quả in ra của đoạn mã trên là gì?
5);
Trả lời:
Đáp án đúng: D
Đoạn mã Java này sử dụng vòng lặp `do...while` và câu lệnh `if` để thay đổi giá trị của hai biến `i` và `j`. Ta sẽ theo dõi giá trị của `i` và `j` qua mỗi lần lặp:
- **Ban đầu:** `i = 1`, `j = 10`
- **Lần lặp 1:**
- `i > j` (1 > 10) là sai.
- `j` giảm xuống còn 9.
- `i` tăng lên thành 2. Điều kiện `i < 5` (2 < 5) là đúng.
- **Lần lặp 2:**
- `i > j` (2 > 9) là sai.
- `j` giảm xuống còn 8.
- `i` tăng lên thành 3. Điều kiện `i < 5` (3 < 5) là đúng.
- **Lần lặp 3:**
- `i > j` (3 > 8) là sai.
- `j` giảm xuống còn 7.
- `i` tăng lên thành 4. Điều kiện `i < 5` (4 < 5) là đúng.
- **Lần lặp 4:**
- `i > j` (4 > 7) là sai.
- `j` giảm xuống còn 6.
- `i` tăng lên thành 5. Điều kiện `i < 5` (5 < 5) là sai. Vòng lặp kết thúc.
Vậy, sau khi vòng lặp kết thúc, `i = 5` và `j = 6`.





