Tin học 10: Python/Bài 9
Lệnh lặp while
sửaLệnh lặp while thực hiện khối lệnh với số lần lặp không biết trước. Khối lệnh lặp được thực hiện cho đến khi <điều kiện> = False. Cú pháp của lệnh while như sau:
while <điều kiện>:
<khối lệnh>
Trong đó <điều kiện> là biểu thức lôgic. Khi thực hiện lệnh, Python sẽ kiểm tra <điều kiện>, nếu đúng thì thực hiện <khối lệnh>, nếu sai thì kết thúc lệnh while.
Chú ý. Sau dấu ":" khối lệnh lặp cần được viết lùi vào và thẳng hàng. Mặc định các lệnh sẽ lùi vào 1 tab hoặc 4 dấu cách.
Ví dụ 1. Quan sát đoạn chương trình sau và cho biết S là giá trị của biểu thức toán học nào?
S = 0
k = 1
while k*k < 100:
S = S + k*k
k = k + 1
Giải thích: Đoạn chương trình tính tổng với điều kiện < 100. Vậy S chính là tổng bình phương các số tự nhiên nhỏ hơn 10.
Ví dụ 2. Thực hiện các lệnh sau. Kết quả sẽ in ra những số nào?
>>> k = 2
>>> while k < 50
print(k,end = " ")
k = k + 3
Giải thích: Vòng lặp while sẽ dừng khi k vượt quá 50. Bắt đầu vòng lặp, k = 2. Sau mỗi bước lặp k tăng lên 3 đơn vị. Do vậy, kết quả sẽ phải in ra dãy sau:
2 5 8 11 14 17 20 23 26 29 32 35 38 41 44 47
Cấu trúc lập trình
sửaVới việc sử dụng câu lệnh rẽ nhánh if và các câu lệnh lặp for, while ta có thể thấy một chương trình trên Python nói chung có thể được chia thành các khối lệnh sau:
- Khối gồm các lệnh được thực hiện theo trình tự từ trên xuống dưới. Khối này tương ứng với cấu trúc tuần tự trong chương trình và được thể hiện bằng các câu lệnh như gán giá trị, nhập/xuất dữ liệu,...
- Khối các câu lệnh chỉ được thực hiện tùy thuộc vào điều kiện nào đó là đúng hay sai. Khối lệnh này tương ứng với cấu trúc rẽ nhánh và được thể hiện bằng câu lệnh rẽ nhánh if.
- Khối các câu lệnh được thực hiện lặp đi lặp lại tùy theo điều kiện nào đó vẫn còn đúng hay sai. Khối lệnh này tương ứng với cấu trúc lặp và được thể hiện bằng các câu lệnh lặp for, while.
Ba cấu trúc chương trình trên được gọi là các cấu trúc lập trình cơ bản của các ngôn ngữ lập trình bậc cao.
Nguồn tham khảo
sửa- Tin học 10 (Kết nối tri thức với cuộc sống), Nhà xuất bản Giáo dục Việt Nam.