Em hãy nêu những công việc hằng ngày em thực hiện được lặp đi lặp lại nhiều lần, với số lần lặp chưa biết trước:... Các hoạt động lặp với số lần chưa biết trước Ví dụ 1: Những hoạt độ
Trang 1Môn: Tin học - Lớp 8
Trang 2Program Btap;
Var sum, i:= integer;
sum:=0;
For i = 1.5 to 10 do
Begin
sum:= sum + i;
writeln(sum);
Readln;
End
KIỂM TRA BÀI CŨ
Câu hỏi : Hãy liệt kê các lỗi trong chương trình dưới
đây:
Program Btap;
Var sum, i: integer;
Begin
sum:=0;
For i := 1 to 10 do
Begin sum:= sum + i;
writeln(sum);
End;
Readln;
End
Trang 3? Em hãy nêu những công việc
hằng ngày em thực hiện được lặp đi
lặp lại nhiều lần, với số lần lặp chưa
biết trước:
Trang 4Bài 8 :
1 Các hoạt động lặp với số lần chưa biết trước
Ví dụ 1: Những hoạt động lặp với số lần lặp
chưa biết trước như : học cho đến khi thuộc bài,
gọi điện nghe chuông reo cho đến khi có người
nhấc máy,
Trang 5Ví dụ 2 : Tìm số tự nhiên n để tổng Sn = 1+ 2 + 3 + …
+ n, nhỏ nhất lớn hơn 1000.
1 Các hoạt động lặp với số lần chưa biết trước.
2 S2 = 1 + 2 Đúng
Đúng
n Sn = 1 + 2 + 3 + … + n Sai, kết thúc việc tính tổng
3 S3 = 1 + 2 + 3
Phân tích:
Trang 6Thuật toán :
Bước 1 S 0, n 0.
Bước 2 S ≤ 1000, n n + 1; Ngược lại, chuyển tới
bước 4
Bước 3 S S + n và quay lại bước 2.
Bước 4 In kết quả: S và số tự nhiên n để tổng S nhỏ
nhất lớn hơn 1000 Kết thúc thuật toán
1 Các hoạt động lặp với số lần chưa biết trước.
Ví dụ 2 : Tìm số tự nhiên n để tổng Sn = 1+ 2 + 3 + … +
n, nhỏ nhất lớn hơn 1000.
Trang 7Ngoài cấu trúc lặp với số lần lặp biết trước, các ngôn ngữ lập trình còn có các câu lệnh lặp với số lần
chưa biết trước
Tóm lại :
S<= 1000
Kết thúc thuật toán
n:= n + 1;
S:= S + n;
Đúng
Sai
1 Các hoạt động lặp với số lần chưa biết trước.
Trang 82 Ví dụ về lệnh lặp với số lần chưa biết trước
Xét lưu đồ hoạt động của thuật toán sau:
do
S<= 1000
Kết thúc thuật toán
n:= n + 1;
S:= S + n;
Đúng
Sai
While
<Điều kiện>
<Câu lệnh>
Trang 9< câu lệnh >;
Trong đó :
While , do là các từ khóa.
2 Ví dụ về lệnh lặp với số lần chưa biết trước
a) Cú pháp:
WHILE < điều kiện > DO
Trang 10Điều kiện
Thoát ra khỏi vòng lặp While
Thực hiện câu lệnh
Sai
b) Lưu đồ hoạt động :
Bước 1: Kiểm tra điều kiện
Bước 2: Nếu điều kiện SAI , câu lệnh bị bỏ qua và kết
thúc lệnh lặp. Nếu điều kiện ĐÚNG, thực hiện câu lệnh và
quay lại bước 1
2 Ví dụ về lệnh lặp với số lần chưa biết trước
WHILE <điều kiện> DO <câu lệnh>;
Cú pháp:
Đúng
Trang 11Chú ý : Trong trường hợp câu lệnh ghép:
While < điều kiện > do
Begin
câu lệnh 1;
câu lệnh 2; …
End;
2 Ví dụ về lệnh lặp với số lần chưa biết trước
WHILE <điều kiện> DO <câu lệnh>;
Cú pháp:
Ví dụ 1:
a) While x = 0.5 do x:= x + 1 ;
b) While ( n mod i<>0 ) do i:= i + 1 ;
Trang 122 Ví dụ về lệnh lặp với số lần chưa biết trước
WHILE <điều kiện> DO <câu lệnh>;
Cú pháp:
Ví dụ 2: Viết câu lệnh While … do thể hiện bước 2 và bước 3 của thuật toán sau:
Bước 1 S 0, n 0
Bước 2 S≤ 1000, n n + 1; Ngược lại, chuyển tới bước 4
Bước 3 S S + n và quay lại bước 2
Bước 4 Thông báo kết quả S và n Kết thúc thuật toán
While s<= 1000 do
begin
n:= n + 1;
S:= S + n;
Trang 13Câu hỏi: Em hãy nêu những điểm khác nhau giữa câu
lệnh lặp For … do và câu lệnh lặp While … do (số lần
lặp, giá trị so sánh của biến trong vòng lặp, điều kiện)
1) Số lần lặp được biết trước
2) Giá trị so sánh của biến
đếm là một số nguyên
1) Số lần lặp chưa biết trước
2) Giá trị so sánh của biến có thể là một số nguyên hoặc một
số thực
3) Điều kiện là so sánh giá trị
của biến đếm với giá trị cuối 3) Điều kiện thường là một phép so sánh.
Trang 14a) X:= 10; while X:= 10 do X:= X + 5;
b) X:= 10; while X = 10 do X = X + 5;
c) S:= 0; n:=0; while S <= 10 do n:= n + 1; S:= S + n;
a) X:= 10; while X = 10 do X:= X + 5;
b) X:= 10; while X = 10 do X : = X + 5;
c) S:= 0; n:=0; while S <= 10 do
begin
n:= n + 1;
S:= S + n;
Bài 5/tr 71 (SGK) Hãy chỉ ra lỗi trong các câu lệnh
sau đây và sửa lại cho đúng:
Sửa lại đúng:
Trang 15*) Tóm tắt nội dung bài học :
1) Ngoài cấu trúc lặp với số lần biết trước, các ngôn ngữ lập trình còn có các câu lệnh lặp với số lần chưa biết trước
2) Câu lệnh lặp với số lần lặp chưa biết trước :
a) Trường hợp câu lênh đơn:
WHILE <điều kiện> DO <câu lệnh>;
b) Trường hợp câu lệnh ghép:
WHILE <điều kiện> DO
Begin
câu lệnh 1;
câu lệnh 2; …
End;
Trang 16- Nắm vững cú pháp và các bước hoạt động của câu lệnh lặp While … do.
- Câu hỏi và bài tập về nhà : Bài tập 3 trang 71 SGK
- Thực hành các ví dụ 3, 4, 5 trang 69 SGK.
CHÚC CÁC EM HỌC GIỎI MÔN TIN HỌC.
THE END.
CHÚC CÁC EM HỌC GIỎI MÔN TIN HỌC.
THE END.
Trang 181 2 10