Giải Tin học 10 – Bài 21. Câu lệnh lặp while – KNTT
1. Lệnh while
Câu 1. Lệnh while kiểm tra điều kiện trước hay sau thực hiện khối lệnh lặp?
Câu 2. Viết đoạn chương trình tính tổng 2 + 4 + … + 100 sử dụng lệnh while
Hướng dẫn giải:
Câu 1: Câu lệnh while sẽ kiểm tra điều kiện trước khi thực hiện khối lệnh lặp, nếu điều kiện đúng thì thực hiện khối lệnh lặp, điều kiện sai sẽ thoát khỏi lệnh lặp.
Câu 2: Chương trình
s = 0
i = 2
while i<=100:
s = s + i
i = i + 2
print("Tổng cần tính là",s)
2. Cấu trúc lập trình
Câu hỏi: Viết chương trình in ra màn hình dãy các chữ cái Tiếng Anh từ “A” đến “Z” theo ba hàng ngang trên màn hình, hai hàng đầu có 10 chữ cái, hàng thứ ba có 6 chữ cái.
Hướng dẫn giải:
i = 0
k = 65 #Bắt đầu từ số thứ tự của chữ cái A
while k<=90:
i = i + 1
if i%10 == 0:
print(chr(k)) #Chữ cái cuối hàng sẽ in ra và xuống dòng
else:
print(chr(k),end = " ") #Không xuống dòng
k = k + 1
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.
Câu 2. Viết chương trình đếm trong dãy 100 số tự nhiên đầu tiê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.
Hướng dẫn giải:
Câu 1: Chương trình
max = 1
i = 1
while i<100:
max = i
i = i + 3
print(max)
Câu 2: Chương trình
dem = 0
i = 0
while i<100:
if i%5==0 or i%3==1:
dem = dem + 1
i = i + 1
print("Có",dem,"số tự nhiên thỏa mãn")
Vận dụng
Câu hỏi: Viết chương trình in các số tự nhiên từ 1 đến 100 ra màn hình thành 10 hàng, mỗi hàng 10 số, có dạng như sau:
1 2 3 … 10
11 12 … 20
………………
91 92 …100
Hướng dẫn giải:
i = 1
while i<=100:
#Nếu số chia hết cho 10 thì in ra và xuống dòng
if i%10==0:print(i)
#Các số còn lại in ra trên một dòng
else: print(i,end=" ")
i = i + 1
Xem thêm Bài 22. Kiểu dữ liệu danh sách