Bài 8. Lặp với số lần chưa biết trước

Chia sẻ bởi Lê Khắc Thận | Ngày 24/10/2018 | 52

Chia sẻ tài liệu: Bài 8. Lặp với số lần chưa biết trước thuộc Tin học 8

Nội dung tài liệu:

PHÒNG GD & ĐT THÀNH PHỐ SÓC TRĂNG
TRƯỜNG THCS NGUYEN TRAI
Lớp: 8
Bộ môn: Tin Học
CHÀO MỪNG QUÝ THÀY CÔ ĐẾN DỰ
BUỔI THAO GIẢNG
KIỂM TRA BÀI CŨ
Câu 1: Trình bày cú pháp và ý nghĩa của các thành phần trong câu lệnh For… to…do
FOR : = TO
DO Câu lệnh;
Câu 2: Giải thích tại sao câu lệnh For… to … do được gọi là câu lệnh lặp với số lần biết trước?
 Trong đó :
- For, to, do: Là các từ khóa.
- Biến đếm: Là biến kiểu nguyên.
- Giá trị đầu, giá trị cuối: Là các giá trị nguyên
- Câu lệnh: Là câu lệnh đơn hoặc câu lệnh ghép
Câu 1: Cú pháp của câu lệnh For… to…do
Câu 2: Câu lệnh For… to … do được gọi là câu lệnh lặp với số lần biết trước vì:


Câu lệnh For…to…do sẽ thực hiện câu lệnh nhiều lần với số vòng lặp là biết trước và bằng
giá trị cuối – giá trị đầu + 1
Hãy quan sát:
Bài 1:
S = 1 + 2 + 3 + . . .+100
Bài 2:
S = 1 + 2 + 3 + . . .
? Hóy cho bi?t b�i s? 1 cú s? vũng l?p l� bao nhiờu?
? Hãy cho biết bài số 2 có số vòng lặp là bao nhiêu?
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . … … . . .
Lặp 99 lần
Lặp không biết trước
Lặp với số lần biết trước
Lặp với số lần chưa biết trước
Bài 2: Tính tổng của n số tự nhiên đầu tiên sao cho tổng Sn nhỏ nhất >1000
Bài 1: Tính tổng của 100 số tự nhiên đầu tiên
Tiết PPCT: 13
Bài 8
LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
M?t ng�y ch? nh?t, b?n Long g?i di?n cho Trang. Khụng cú ai nh?c mỏy. Long quy?t d?nh g?i thờm hai l?n n?a. N?u v?n khụng cú ai nh?c mỏy thỡ ch?c l� khụng cú ai ? nh�. Nhu v?y Long dó bi?t tru?c l� mỡnh s? l?p l?i ho?t d?ng g?i di?n thờm hai l?n.
Một ngày khác, Long quyết định cứ 10 phút gọi điện một lần cho Trang cho đến khi nào có người nhấc máy. Lần này Long sẽ lặp lại hoạt động gọi điện mấy lần?
Chưa thể biết trước được, có thể một lần, có thể hai hoặc nhiều hơn nữa. Điều kiện để kết thúc hoạt động lặp đó là: Có người nhấc máy.
1. Các hoạt động lặp với số lần chưa biết:
* Ví dụ 1: SGK/67
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
1. Các hoạt động lặp với số lần chưa biết:
* Ví dụ 1: SGK/67
Không nhấc máy?
Kết thúc
10’sau gọi điện
Đúng
Sai
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
1. Các hoạt động lặp với số lần chưa biết:
* 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.
Phân tích:
1
Đúng
S2 = 1 + 2
Đúng
Đúng
…..
………..
……
n
Sn = 1 + 2 + 3 + … + n
Sai  KT
3
S3 = 1 + 2 + 3
2
S1 = 0 + 1
S1
=
+
n2
S2
=
+
n3
+
0
S0 = 0
S0
=
Đúng
n1
Sn-1
=
+
n
…..
………..
……
Thuậ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.
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
1. Các hoạt động lặp với số lần chưa biết:
Ví dụ 2 :

B2. Nếu S ≤ 1000 thì n  n + 1;
Ngược lại, chuyển tới bước 4.
B3. S  S + n và quay lại bước 2.
Lưu đồ hoạt động :
S<= 1000
Kết thúc
Đúng
Sai
n:= n + 1;
S:= S + n;
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
1. Các hoạt động lặp với số lần chưa biết:
* Ví dụ 2: SGK/67
Lưu đồ hoạt động :
Điều kiện?
Kết thúc
Câu lệnh
Đúng
Sai
* Ví dụ 1 : SGK/67
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
1. Các hoạt động lặp với số lần chưa biết:
2. Ví dụ về lệnh lặp với số lần chưa biết trước
Cú pháp:
Trong pascal câu lệnh lặp với số lần chưa biết trước có dạng:
While <điều kiện> do ;
 Trong đó :
- Điều kiện: Thường là các phép so sánh.
- Câu lệnh: Là câu lệnh đơn hoặc câu lệnh ghép
b) Hoạt động:
Điều kiện?
Kết thúc
Câu lệnh
Đúng
Sai

Bước 1: Kiểm tra điều kiện
Bước 2: + Nếu điều kiện đúng, thực hiện câu lệnh và quay lại bước 1

+ Nếu điều kiện sai thì bỏ qua câu lệnh và kết thúc lệnh lặp
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
1. Các hoạt động lặp với số lần chưa biết:
2. Ví dụ về lệnh lặp với số lần chưa biết trước
Cú pháp:

b) Hoạt động:

Thuậ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ả
Thể hiện hoạt động lặp của bài 2 bằng đoạn chương trình sau: S: = 0; n: = 0;
While S<=1000 do
Begin
n:=n+1;
S:=S+n;
End;
c) Ví dụ 4:
Viết chương trình trên phần mềm turbo pascal
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
1. Các hoạt động lặp với số lần chưa biết:
2. Ví dụ về lệnh lặp với số lần chưa biết trước
Cú pháp:

b) Hoạt động:

Tính tổng n số tự nhiên đầu tiên sao cho tổng S min>m (với m là một số nguyên bất kỳ được nhập từ bàn phím.
S: = 0; n: = 0;
While S<= 1000 do
Begin
n:=n+1;
S:=S+n;
End;
m
c) Ví dụ 4:

Mô tả thuật toán với m=10
S < =10
KT
n:=n+1;
S:=S+n;
Đúng
Sai
Đ
Đ
Đ
Đ
S
S:=0 ; n:=0
0
1
1
0 + 1=1
2
2
1+2=3
3
3
3+3=6
4
4
6+4=10
5
5
10+5=15
1
3
6
10
15
Vậy sau đoạn chương trình thì S=
15
B�i 5: Hóy ch? ra l?i trong cỏc cõu l?nh sau dõy:
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
Thừa dấu hai chấm trong điều kiện
Thiếu dấu 2 chấm trong câu lệnh
Thiếu từ khoá begin trước câu lệnh n:=n+1 và từ khoá end sau câu lệnh S:=S+n, do đó vòng lặp trở thành vô tận
Begin n:=n+1; S:=S+n; end;
n:=n+1; S:=S+n
Củng cố
Củng cố
Nêu cú pháp và hoạt động của câu lệnh While…do?
While <điều kiện> do ;
Bước 1: Kiểm tra điều kiện
Bước 2: + Nếu điều kiện đúng, thực hiện câu lệnh và quay lại bước 1

+ Nếu điều kiện sai thì bỏ qua câu lệnh và kết thúc lệnh lặp
Dặn dò
Học bài cũ – học thuộc ghi nhớ.
- Làm bài tập SGK.
- Xem trước nội dung phần còn lại.
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Lê Khắc Thận
Dung lượng: | Lượt tài: 1
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)