KH I Đ NG Ở ỘBài toán: viết chương trình thể hiện những bước lệnh điều khiển robot thu hoạch củ cải theo các yêu cầu... Hoạt động nhổ củ cải dừng lại khi: Đây là cấu trúc lặp với số lần
Trang 1LỚP
8
CH Đ 9 Ủ Ề
L P V I S L N CH A BI T TR Ặ Ớ Ố Ầ Ư Ế ƯỚ C
Nhận biết thế nào là lệnh lặp với số lần chưa biết trước?
Câu lệnh lặp while…do hoạt động như thế nào?
Trang 2KH I Đ NG Ở Ộ
Bài toán: viết chương trình thể hiện những bước lệnh điều khiển robot
thu hoạch củ cải theo các yêu cầu.
Trang 3Làm th nào đ l p trình v i vòng l p có s l n l p ch a bi t ế ể ậ ớ ặ ố ầ ặ ư ế
Trang 4KHÁM PHÁ
1 Nh n bi t bài toán l p v i s l n ch a bi t tr ậ ế ặ ớ ố ầ ư ế ướ c
2 Cách vi t và s d ng vòng l p while do ế ử ụ ặ
Trang 51 Nh n bi t bài toán l p v i s l n ch a ậ ế ặ ớ ố ầ ư
bi t tr ế ướ c
Bước 1 Khởi tạo i 0
Bước 2 Nhập giá trị biến het_luong là ‘T’ hoặc ‘F’ Bước 3 Kiểm tra điều kiện het_luong = ‘F’
Bước 3.1: Nếu đúng thì qua bước 4
Bước 3.2: Nếu sai thì kết thúc
Bước 4 i i + 1
Bước 5
Bước 5.1: Tiến 1 bước
Bước 5.2: Nhổ củ cải thứ i Quay lại bước 2
Hoạt động nhổ củ cải dừng lại khi:
Đây là cấu trúc lặp với số lần:
Biết trước Không biết trước
het_luong = ‘T’
Trang 61 Nh n bi t bài toán l p v i s l n ậ ế ặ ớ ố ầ
bi t tr ế ướ c
Đối với một bài toán lặp, nếu em không thể biết trước số lần lặp, thì đó là bài toán lặp với số lần chưa biết trước Khi đó, em cần biết được hoạt động lặp sẽ dừng lại khi nào
Trang 7Ví d 1: Ch y quanh sân tr ụ ạ ườ ng đ 2 ủ vòng thì nghỉ
Trang 8Ví d 2: Ch y quanh sân tr ụ ạ ườ ng nhi u vòng ề cho đ n khi m t thì ngh ế ệ ỉ
Chưa biết trướcmệt
a) Chạy bao nhiêu vòng:
b) Điều kiện dừng:
Đây là bài toán lặp với số lần chưa biết trước
Trang 9Ví d 3: Gieo hai h t xí ng u cho đ n khi đ ụ ạ ầ ế ượ c hai m t có cùng s nút ặ ố
Chưa biết trướcKhi gieo được hai mặt có cùng số nút
- Phải gieo bao nhiêu lần?
- Điều kiện dừng?
Đây là bài toán lặp với số lần chưa biết trước
Trang 102 Cách viết và sử dụng vòng lặp while do
While <điều kiện> do <câu lệnh>;
Pascal thể hiện cấu trúc lặp với số lần lặp chưa biết trước bằng câu lệnh while…do có dạng như sau:
Trong đó:
• while, do là các từ khóa
• <điều kiện> thường là phép so sánh
• <câu lệnh> có thể là câu lệnh đơn hay câu lệnh ghép
Câu lệnh lặp này được thực hiện như sau:
Bước 1 Kiểm tra điều kiện
Bước 2 Trong khi điều kiện ĐÚNG, thì thực hiện câu lệnh và quay lại bước 1 Ngược lại, câu lệnh sẽ bị bỏ qua và việc
thực hiện lệnh lặp kết thúc
Trang 11Ví d 1: Ch ụ ươ ng trình sau ki m tra trong khi ể
ch a h t lu ng thì ti n 1 b ư ế ố ế ướ c và nh c c i ổ ủ ả
điều kiện
Trang 12Ví d 2: M i ngày, Th con đ u lì xì cho heo t i ụ ỗ ỏ ề ố thi u là 1 xu, t i đa là 10 xu ể ố
Xác định bài toán:
INPUT:
OUTPUT:
sxS
Dựa vào sơ đồ khối, em hãy trả lời các câu
hỏi:
a) Thuật toán có cấu trúc lặp không?
b) Hoạt động chính nào được lặp?
c) Lặp bao nhiêu lần? Không biết trước
d) Điều kiện dừng?
Đây là cấu trúc lặp với số lần?
Trang 14TR I NGHI M Ả Ệ
1 Em đã hi u rõ v câu l nh while do ch a? ể ề ệ ư
2 Trò ch i ném vòng ơ
3 Giúp An s a l i ch ử ỗ ươ ng trình
Trang 151 Em đã hi u rõ v câu l nh while do ể ề ệ
ch a? ư
Đo n ch ạ ươ ng trình th 1 ứ
Trang 166 ≤ 10 Đúng i = 4, S = 10
10 ≤ 10 Đúng i = 5, S = 15 15
5
Trang 17P >20 thì dừng
Trang 181 Em đã hi u rõ v câu l nh while do ể ề ệ
ch a? ư
Đo n ch ạ ươ ng trình th 4 ứ
a = 5
Trang 192 Trò ch i ném vòng ơ
i i + 1 diem diem + 2
het_vong? (T/F)
het_vong = ‘F’
i 0 diem 0
diem
Trang 20diem
Trang 213 Giúp An s a l i ch ử ỗ ươ ng trình
begin
end;