Chưa biết lặp mấy lần 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 động lặp với số lần chưa biết trước Một ngày khác, Long quyết định cứ 10 ph
Trang 1KIỂM TRA BÀI CŨ
- Hãy nêu cú pháp câu lệnh lặp For…Do
Cú pháp:
For <biến đếm>:=<giá trị đầu> to
<giá trị cuối> do
<câu lệnh>;
Trang 2VD1: 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
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
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.
Chưa biết lặp mấy lần
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?
Trang 41 Các hoạt động lặp với số lần chưa biết trước
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
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.
VD1(Sgk): VD1
Trang 51 Các hoạt động lặp với số lần chưa biết trước
VD2(Sgk): VD2
… tăng dần
Đ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
Trang 61 Các hoạt động lặp với số lần chưa biết trước
Phân tích bài toán:
2 T2 = 1 + 2 Đúng
3 T3 = 1 + 2 + 3 Đúng
? T (Sao cho Tn = 1 + 2 + 3 + … +?
n nhỏ nhất lớn hơn 1000)
Sai, kết thúc việc tính tổng
Trang 71 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:
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.
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:
S≤ 1000? Sai
n ← n+1;
S ← S+n;
Đúng
Trang 82 Ví dụ về lệnh lặp với số lần chưa biết trước
Hãy nêu cú pháp với câu lệnh lặp while - do?
Cú pháp:
While < điều kiện > do < câu lệnh >;
Điều kiện: biểu thức quan hệ hoặc biểu thức logic
Câu lệnh: là môt câu lệnh trong Pascal (có thể là câu lệnh đơn giản hay câu lệnh ghép)
Trang 9SƠ ĐỒ KHỐI
Điều kiện
Câu lệnh
Đúng
Sai
2 Ví dụ về lệnh lặp với số lần chưa biết trước
Quan sát sơ đồ
khối, hãy cho
biết sự thực
hiện của máy?
• Bước 1: tính giá trị của <điều kiện>.
• Bước 2: Nếu <điều kiện> có giá trị đúng
thì:
• thực hiện lệnh cần lặp.
• quay lại bước 1.
Chừng nào điều kiện còn đúng thì câu lệnh còn thực hiện.
Trang 102 Ví dụ về lệnh lặp với số lần chưa biết trước
Trong đó : While, do là các từ khóa
Điều kiện là a<=b (chứa phép so sánh)
Câu lệnh là a:=a+1 (câu lệnh đơn)
VD2: While a>b do
Begin write(‘a>b’); a:=a-1; End;
Trong đó : While, do là các từ khóa
Điều kiện là a>b (chứa phép so sánh)
Câu lệnh là Write(‘a>b’) và a:=a-1 (câu lệnh ghép)
Trang 112 Ví dụ về lệnh lặp với số lần chưa biết trước
VD: Dùng câu lệnh lặp While … Do để viết chương trình thể hiện thuật toán trong Ví dụ 2 (Sgk)
var S,n: integer;
Begin
S:=0; n:=0;
while S<=1000 do
begin
n:=n+1; S:=S+n ;
end;
write(‘Tong S= ’,S,‘ va ’,n,’ la so tu nhien nho nhat sao cho S>1000’);
Readln;
End.
Tong S= 1035 va 45 la so tu nhien nho nha sao cho S>1000
Trang 12Caâu 1 Caâu 2 Caâu 3 Caâu 4
Học sinh thảo luận theo nhóm (2 bàn 1 nhóm)
- Có 4 câu hỏi Mỗi nhóm chỉ được phép chọn 1 câu hỏi, nhóm chọn câu hỏi, cử đại diện đứng lên đọc đề Sau đó tất cả các nhóm cùng thảo luận.
- Cách thức trả lời:
+ Nếu câu hỏi trắc nghiệm: tất cả các nhóm cùng giơ đáp
án lên
+ Nếu câu hỏi tự luận: nhóm chọn câu hỏi cử đại diện đứng lên trả lời Các nhóm khác nhận xét.
Trang 13Câ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?
dừng.