1. Lệnh While
Lệnh lặp while
thực hiện một khối lệnh lặp lại nhiều lần cho đến khi một điều kiện trở thành False
. Số lần lặp không xác định trước.
Cú pháp:
Python
while <điều kiện>:
<khối lệnh>
Hoạt động:
- Python kiểm tra
<điều kiện>
. Nếu đúng (True
), thực hiện<khối lệnh>
. Sau đó, quay lại kiểm tra<điều kiện>
một lần nữa. - Quá trình này lặp lại cho đến khi
<điều kiện>
là sai (False
).

Ví dụ: vòng lặp tiếp tục cho đến khi k
lớn hơn hoặc bằng 100. S
là tổng của dãy số 1, 8, 15, …, 99.
Python
S = 0
k = 1
while k < 100:
S = S + k
k = k + 7
print(S) # Output: 750
Lưu ý quan trọng:
- Vì số lần lặp phụ thuộc vào điều kiện, cần đảm bảo điều kiện sẽ trở thành
False
vào một thời điểm nào đó, nếu không vòng lặp sẽ chạy vô hạn. - Lệnh
break
có thể được sử dụng để thoát khỏi vòng lặpwhile
hoặcfor
ngay lập tức.
Python
for k in range(10):
print(k, end=" ")
if k == 5:
break
# Output: 0 1 2 3 4 5
Câu hỏi luyện tập: Viết chương trình tính tổng 2 + 4 + … + 100 sử dụng lệnh while
Python
S = 0
k = 2
while k <= 100:
S = S + k
k = k + 2
print(S)
2. Cấu trúc lập trình
Ba cấu trúc lập trình cơ bản:
- Tuần tự: Các lệnh được thực hiện theo thứ tự từ trên xuống dưới.
- Rẽ nhánh: Một khối lệnh chỉ được thực hiện nếu một điều kiện nhất định là đúng (sử dụng
if
). - Lặp: Một khối lệnh được lặp đi lặp lại nhiều lần (sử dụng
for
hoặcwhile
).
Luyện tập
Câu 1. Cho dãy số 1, 4, 7, 10,… Tìm phần tử lớn nhất của dãy nhưng nhỏ hơn 100
Python
k = 1
while k < 100:
s = k
k = k + 3
print(s) # Output: 97
Câu 2. Viết chương trình đếm trong dãy 100 số tự nhiên có bao nhiêu số thỏa mãn điều kiện:
Hoặc chia hết cho 5 hoặc chia cho 3 dư 1
Python
C = 0
k = 1
while k <= 100:
if k % 5 == 0 or k % 3 == 1:
C = C + 1
k = k + 1
print(C)
Vận dụng
Hãy viết chương trình in các số tự nhiên từ 1 đến 100 ra màn hình, chia thành 10 hàng, mỗi hàng 10 số, với định dạng như sau:
Python
1 2 3 ... 10
11 12 13 ... 20
...
91 92 93 ... 100
Python
for k in range(1, 101):
print(k, end=" ")
if k % 10 == 0:
print() # Xuống dòng
Câu hỏi trắc nghiệm dạng D1 và D2 Tin học 10 Bài 21. Câu lệnh lặp While
Thời gian làm bài: 30 phút
Đáp án chỉ hiển thị sau khi hoàn thành bài làm
Vui lòng nhập họ và tên để bắt đầu làm bài
Bảng xếp hạng
Chưa có kết quả nào.