Tn nhỏ nhất lớn hơn 1000?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?. Không thể biết trước số lần lặp và không sử dụng được lệnh for…to…do... Các hoạt độ
Trang 1Tin Học 8
Trang 3KIỂM TRA BÀI CŨ Hãy nêu cú pháp câu lệnh lặp: For…to…do?
Trang 4KIỂM TRA BÀI CŨ
Trang 5Tn nhỏ nhất lớn hơn 1000?
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?
Theo em phép cộng trên có biết trước số lần lặp không? Có sử dụng lệnh lặp for…to…
do được không?
Không thể biết trước số lần lặp và không sử dụng được lệnh for…to…do
Trang 6LẶP VỚI SỐ LẦN CHƯA BiẾT TRƯỚC
Trang 7 Nam học cho đến khi thuộc bài.
Cô ấy phải đi bộ như vậy cho đến khi về tới nhà
Tôi phải nhập dữ liệu vào máy tính cho đến khi nhập xong
Tiết 49- Bài 8
Trang 81 Các hoạt động lặp với số
lần chưa biết trước: Ví dụ 1: Ví dụ 1
Một ngày, 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 thì thơi
Hoạt động lặp là gì ? Khi nào thì kết thúc vịng lặp?
Hoạt động lặp: Gọi điện
Kết thúc vịng lặp: Cĩ người nhấc máy thì thơi.
Số lần lặp đã biết chưa?
Tiết 49- Bài 8
Trang 101 Các hoạt động lặp với số
lần chưa biết trước: Ví dụ 2: Ví dụ 2
Nếu cộng lần lượt n số tự nhiên đầu tiên (n=1,2,3,…) Ta sẽ được kết quả:
Trang 111 Các hoạt động lặp với số
lần chưa biết trước: Ví dụ 2: Ví dụ 2 Phân tích bài tốn:
Sai, kết thúc việc tính tổng
Tiết 49- Bài 8
Trang 121 Các hoạt động lặp với số
lần chưa biết trước: Ví dụ 2: Ví dụ 2 Ta cĩ thuật tốn như sau:
* Cĩ thể diễn tả bài tốn
trên bằng sơ đồ như sau:
Tiết 49- Bài 8
Trang 131 Các hoạt động lặp với số
lần chưa biết trước:
định trước phụ thuộc vào
một điều kiện cụ thể được
thỏa mãn và chỉ dừng lại
khi điều kiện khơng thỏa
mã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?
Trang 141 Các hoạt động lặp với số
lần chưa biết trước:
Trang 152 Ví dụ về lệnh lặp với số lần chưa biết trước
While, do: là các từ khóa
Điều kiện: thường là một phép so sánh
Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép
Tiết 49- Bài 8
Trang 16KẾT THÚC
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 cách thực hiện câu lệnh lặp?
Bước 1 : Kiểm tra điều kiện.
Bước 2 : - Nếu điều kiện sai,
câu lệnh sẽ bị bỏ qua và việc
thực hiện lệnh lặp kết thúc
- Nếu điều kiện đúng, thực hiện
câu lệnh và quay lại bước 1.
Tiết 49- Bài 8
Chừng nào điều kiện còn
đúng thì câu lệnh còn thực
hiện
Trang 172 Ví dụ về lệnh lặp với số lần chưa biết trước
VD1: While a<=b do a:=a+1;
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)
Tiết 49- Bài 8
Trang 182 Ví dụ về lệnh lặp với số lần chưa biết trước
Viết câu lệnh in ra 5 số tự nhiên liên tiếp bắt đầu bằng số 1
writeln(n);
n:=n+1;
end;
Tiết 49- Bài 8
Trang 193 <= 5?
Viết 3 ra màn hình n:= 3+1=4
4<= 5?
Viết 4 ra màn hình n:= 4+1=5
Sai Đúng
5<= 5?
Viết 5 ra màn hình n:= 5+1=6
6 <= 5?
Kết thúc
Kết quả
n:=1 while n<=5 do begin begin
writeln(n);
n:=n+1;
end;
Trang 20BÀI TẬP VẬN DỤNG
Trang 22B While <câu lệnh> do <điều
kiện>;
C While i<10 do i:= i-1;
D While <điều kiện> do <câu
lệnh>;
Trang 23a) 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 ;
Thieáu daáu :
Trang 24• Về nhà học thuộc bài.
• Làm bài tập 1,2,3a SGK
• Đọc trước phần còn lại của bài.
Trang 25Tin Học 8
Trang 27S ← 0, n ← 0.
Nếu S≤1000, thì: n ← n+1; S ← S + n và quay lại bước 2 Ngược lại, chuyển tới bước 3.
In kết quả: n là số tự nhiên để tổng S nhỏ nhất sao cho S>1000 Kết thúc thuật toán.
VD 4: 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)
Tiết 48- Bài 8
2 Ví dụ về lệnh lặp với số lần chưa biết trước
Trang 28VD 4: 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;
writeln(‘So tu nhien n de tong >1000 la ’, n);
writeln(‘Tong dau tien >1000 la’, S);
Readln;
End.
Tiết 48- Bài 8
Trang 29VD 4: 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)
2 Ví dụ về lệnh lặp với số lần chưa biết trước:
Begin
begin end;
End.
Trang 31writeln(T);
Trang 32Sử dụng câu lệnh ghép
Trang 33Biến đếm là i;
Giá trị đầu là 1, giá trị cuối là 100
Trang 35Học sinh thảo luận
Trang 36A Tính tổng các số tự nhiên từ 1 đến 20.
B Nhập các số nguyên từ bàn phím cho đến khi đủ 50 số.
D Nhập vào 1 số cho đến khi số nhập vào là số chẵn thì dừng.
C Mỗi ngày học bài 2 lần.
30 18 14 13 10 11 9 7654
hoạt động nào là hoạt động lặp với số
lần chưa biết trước?
Trang 37a) 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 ;
Thừa dấu :
Thiếu dấu :
Thiếu Begin
Thiếu End
Câu 2: Hãy chỉ ra lỗi trong các câu lệnh sau dây?
30 18 14 13 10 11 9 7654
Trang 38Không phương án nào đúng.
Không phương án nào đúng.
Trang 39B 10 vòng lặp, S=5 B 10 vịng lặp, S=5 D. 12 vịng lặp, S=4
A 9 vịng lặp, S=5.5 C 11 vịng lặp, S=4.5
SAI RỒI!
SAI RỒI! SAI RỒI!
Câu 4: Thuật tốn sau thực hiện bao nhiêu vịng lặp?
Khi kết thúc giá trị của S bằng bao nhiêu?
- Bước 1: S ← 10, x ← 0.5.
- Bước 2: Nếu S ≤ 5.2 chuyển tới bước 4.
- Bước 3: S ← S –x và quay lại bước 2.
- Bước 4: Thơng báo S và kết thúc thuật tốn
30 18 13 19 14 10 11 7654 9
Trang 41- Các hoạt động lặp với số lần chưa biết trước
phụ thuộc vào một điều kiện cụ thể và chỉ
dừng lại khi điều kiện đó sai.
- 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 <câu lệnh>;