Bài 8. Lặp với số lần chưa biết trước
Chia sẻ bởi Nguyễn Đăng Tình |
Ngày 24/10/2018 |
41
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:
CHÀO MỪNG QUÝ THẦY CÔ GIÁO VÀ TẤT CẢ CÁC EM HỌC SINH
LỚP 8A
Kiểm tra bài cũ:
Cú pháp:
For:= to do
;
Kiểm tra bài cũ:
A. Chưa biết trước.
B. Đã biết trước.
B
VD1: Viết chương trình tính tổng các số tự nhiên từ 1 đến 100
S = 1 + 2 + 3 + . . .+100
Lặp 100 lần
Hãy quan sát
VD2: Viết chương trình nhập vào các số cho đến khi gặp 0 thì dừng lại. Tính tổng các số vừa nhập.
Chua bi?t l?p m?y l?n
Lặp với số lần biết trước, sử dụng câu lệnh lặp For…Do để viết chương trình
Lặp với số lần chưa biết trước, sử dụng câu lệnh gì để viết chương trình?
Các ho?t d?ng l?p v?i s? l?n chua bi?t tru?c
Ví dụ về câu lệnh 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
Nam làm bài tập cho đến khi làm xong.
Cô ấy phải đi bộ như vậy cho đến khi về tới nhà.
Các em hãy cho thêm những ví dụ về hoạt động lặp với số lần chưa biết trước?
1. Các hoạt động lặp với số lần chưa biết trước:
Tôi phải nhập dữ liệu vào máy tính cho đến khi nhập xong.
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
VD1(Sgk):
Long sẽ lặp lại hoạt động gọi điện mấy lần?
1. Các hoạt động lặp với số lần chưa biết trước:
Chưa thể biết trước được. Điều kiện để kết thúc hoạt động lặp đó là có người nhấc máy.
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.
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
T1 = 1
T2 = 1 + 2
T3 = 1 + 2 + 3
....
Cần cộng bao nhiêu số tự nhiên để ta nhận được tổng Tn nhỏ nhất lớn hơn 1000?
VD2(Sgk):
1. Các hoạt động lặp với số lần chưa biết trước:
Điều kiện như thế nào thì kết thúc hoạt động lặp?
Điều kiện: Khi tổng Tn nhỏ nhất lớn hơn 1000 thì kết thúc hoạt động lặp
tăng dầ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 trước:
1
T1 = 1
Đúng
2
T2 = 1 + 2
Đúng
Đúng
…
…
…
?
Tn = 1 + 2 + 3 + … +? (Sao cho Tn nhỏ nhất lớn hơn 1000)
Sai, kết thúc việc tính tổng
3
T3 = 1 + 2 + 3
Phân tích bài toán:
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Bước 1:
Bước 2:
Bước 3:
Bước 4:
S 0, n 0.
Nếu S≤1000, n n+1; Ngược lại, chuyển tới bước 4.
S S + n và quay lại bước 2.
In kết quả: S và n là số tự nhiên nhỏ nhất sao cho S>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:
Kí hiệu S là tổng cần tìm và ta có thuật toán như sau:
Các hoạt động lặp với số lần chưa biết trước phụ thuộc vào cái gì và chỉ dừng lại khi nào?
* Có thể diễn tả bài toán trên bằng sơ đồ như sau:
WHILE <Điều kiện> DO
?
Trong pascal câu lệnh lặp với số lần chưa biết trước có dạng:
1./ Kiểm tra: Điều kiện
2./ Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua và kết thúc vòng lặp.
Nếu điều kiện đúng, thì thực hiện câu lệnh và quay về bước kiểm tra điều kiện
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
2. Ví d? v? l?nh l?p với số lần chưa biết trước:
Baøi 8:
?
Câu lệnh
Đúng
Sai
Điều kiện
Sơ đồ khối của câu lệnh While..Do
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Baøi 8:
Ví dụ 3: Với giá trị nào của n để 1/n < 0.003 ?. Viết chương trình tính số n nhỏ nhất để 1/n nhỏ hơn một sai số cho trước.
Thuật toán:
B1. x← 1, n ← 1.
B2. Nếu x>= 0,003, n ← n+1; Ngược lại, chuyển tới bước 4.
B3. x ← 1/n và quay lại B2.
B4. In kết quả: n là số nhỏ nhất để 1/n< 0,003.
Hãy viết thuật toán cho ví dụ trên
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Ta có đoạn chương trình như sau:
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Câu 1: Trong các hoạt động dưới đây, hoạt động nào là hoạt động lặp với số lần chưa biết trước?
BÀI TẬP
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 n:= n + 1; S:= S + n ;
Câu 2: Hãy chỉ ra lỗi trong các câu lệnh sau đây?
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
- Làm bài tập 2 sgk và xem trước VD4, VD5
- Tìm thêm một vài ví dụ về hoạt động lặp với số lần chưa biết trước.
- Cc ho?t d?ng l?p v?i s? l?n chua bi?t tru?c.
HƯỚNG DẪN VỀ NHÀ
Qua tiết học hôm nay chúng ta cần nắm được các kiến thức sau:
- Cấu trúc của câu lênh lặp với số lần chưa biết trước
Kính chúc sức khỏe Quý Thầy Cô và
các em học sinh thân mến
LỚP 8A
Kiểm tra bài cũ:
Cú pháp:
For
Kiểm tra bài cũ:
A. Chưa biết trước.
B. Đã biết trước.
B
VD1: Viết chương trình tính tổng các số tự nhiên từ 1 đến 100
S = 1 + 2 + 3 + . . .+100
Lặp 100 lần
Hãy quan sát
VD2: Viết chương trình nhập vào các số cho đến khi gặp 0 thì dừng lại. Tính tổng các số vừa nhập.
Chua bi?t l?p m?y l?n
Lặp với số lần biết trước, sử dụng câu lệnh lặp For…Do để viết chương trình
Lặp với số lần chưa biết trước, sử dụng câu lệnh gì để viết chương trình?
Các ho?t d?ng l?p v?i s? l?n chua bi?t tru?c
Ví dụ về câu lệnh 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
Nam làm bài tập cho đến khi làm xong.
Cô ấy phải đi bộ như vậy cho đến khi về tới nhà.
Các em hãy cho thêm những ví dụ về hoạt động lặp với số lần chưa biết trước?
1. Các hoạt động lặp với số lần chưa biết trước:
Tôi phải nhập dữ liệu vào máy tính cho đến khi nhập xong.
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
VD1(Sgk):
Long sẽ lặp lại hoạt động gọi điện mấy lần?
1. Các hoạt động lặp với số lần chưa biết trước:
Chưa thể biết trước được. Điều kiện để kết thúc hoạt động lặp đó là có người nhấc máy.
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.
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
T1 = 1
T2 = 1 + 2
T3 = 1 + 2 + 3
....
Cần cộng bao nhiêu số tự nhiên để ta nhận được tổng Tn nhỏ nhất lớn hơn 1000?
VD2(Sgk):
1. Các hoạt động lặp với số lần chưa biết trước:
Điều kiện như thế nào thì kết thúc hoạt động lặp?
Điều kiện: Khi tổng Tn nhỏ nhất lớn hơn 1000 thì kết thúc hoạt động lặp
tăng dầ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 trước:
1
T1 = 1
Đúng
2
T2 = 1 + 2
Đúng
Đúng
…
…
…
?
Tn = 1 + 2 + 3 + … +? (Sao cho Tn nhỏ nhất lớn hơn 1000)
Sai, kết thúc việc tính tổng
3
T3 = 1 + 2 + 3
Phân tích bài toán:
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Bước 1:
Bước 2:
Bước 3:
Bước 4:
S 0, n 0.
Nếu S≤1000, n n+1; Ngược lại, chuyển tới bước 4.
S S + n và quay lại bước 2.
In kết quả: S và n là số tự nhiên nhỏ nhất sao cho S>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:
Kí hiệu S là tổng cần tìm và ta có thuật toán như sau:
Các hoạt động lặp với số lần chưa biết trước phụ thuộc vào cái gì và chỉ dừng lại khi nào?
* Có thể diễn tả bài toán trên bằng sơ đồ như sau:
WHILE <Điều kiện> DO
?
Trong pascal câu lệnh lặp với số lần chưa biết trước có dạng:
1./ Kiểm tra: Điều kiện
2./ Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua và kết thúc vòng lặp.
Nếu điều kiện đúng, thì thực hiện câu lệnh và quay về bước kiểm tra điều kiện
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
2. Ví d? v? l?nh l?p với số lần chưa biết trước:
Baøi 8:
?
Câu lệnh
Đúng
Sai
Điều kiện
Sơ đồ khối của câu lệnh While..Do
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Baøi 8:
Ví dụ 3: Với giá trị nào của n để 1/n < 0.003 ?. Viết chương trình tính số n nhỏ nhất để 1/n nhỏ hơn một sai số cho trước.
Thuật toán:
B1. x← 1, n ← 1.
B2. Nếu x>= 0,003, n ← n+1; Ngược lại, chuyển tới bước 4.
B3. x ← 1/n và quay lại B2.
B4. In kết quả: n là số nhỏ nhất để 1/n< 0,003.
Hãy viết thuật toán cho ví dụ trên
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
Ta có đoạn chương trình như sau:
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Câu 1: Trong các hoạt động dưới đây, hoạt động nào là hoạt động lặp với số lần chưa biết trước?
BÀI TẬP
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 n:= n + 1; S:= S + n ;
Câu 2: Hãy chỉ ra lỗi trong các câu lệnh sau đây?
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Baøi 8:
LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC
- Làm bài tập 2 sgk và xem trước VD4, VD5
- Tìm thêm một vài ví dụ về hoạt động lặp với số lần chưa biết trước.
- Cc ho?t d?ng l?p v?i s? l?n chua bi?t tru?c.
HƯỚNG DẪN VỀ NHÀ
Qua tiết học hôm nay chúng ta cần nắm được các kiến thức sau:
- Cấu trúc của câu lênh lặp với số lần chưa biết trước
Kính chúc sức khỏe Quý Thầy Cô và
các em học sinh thân mến
* 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ẻ: Nguyễn Đăng Tình
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)