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

Chia sẻ bởi Nhat Thien Thanh | Ngày 24/10/2018 | 30

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ƯƠNG III.
CẤU TRÚC RẼ NHÁNH VÀ LẶP
TIẾT 13. § 10.CẤU TRÚC LẶP
(tiết 2/3)
Kiểm tra bài cũ
25/11/2016 11:29 SA
2
Nhật Thiên Thanh
- Câu lệnh lặp là gì? Hãy cho biết cú pháp câu lệnh lặp với số lần biết trước. Cho ví dụ
TIẾT 13. § 10.CẤU TRÚC LẶP
Cấu trúc lặp
Số lần biết trước
Số lần chưa biết trước
Lặp tiến
Lặp lùi
25/11/2016 11:29 SA
4
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
Bài toán 1: Tính và đưa kết quả ra màn hình:
Tính tổng đến khi nào?
Quá trình tính tổng thực hiện bao nhiêu lần?
25/11/2016 11:29 SA
5
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
a. Câu lệnh while…do
WHILE <điều kiện> DO
Trong đó
Điều kiện: biểu thức logic
Câu lệnh: lệnh đơn hoặc lệnh ghép
25/11/2016 11:29 SA
6
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
b. Cách thức hoạt động
Câu lệnh
Đúng
Điều kiện
Sơ đồ khối
Sai
Hãy mô tả đường đi của chương trình
Quá trình lặp diễn ra ở đâu?
Khi nào quá trình lặp kết thúc
25/11/2016 11:29 SA
7
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
Bài toán 1: Tính và đưa kết quả ra màn hình:
Điều kiện ở đây là gì?
 
Câu lệnh điều kiện được viết thế nào?
s>=20
Nếu điều kiện sai?
Dừng
Nếu điều kiện đúng?
 
25/11/2016 11:29 SA
8
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
 
Dừng
 
 
25/11/2016 11:29 SA
9
Nhật Thiên Thanh
 
var s:longint;
n:word;
begin
s:=0;
n:=0;
while not(s>=20) do
begin
n:=n+1;
s:=s+n;
end;
writeln(`tong s:=`,s:10);
readln
end.
while not(s>=20) do
begin
n:=n+1;
s:=s+n;
end;
25/11/2016 11:29 SA
10
Nhật Thiên Thanh
25/11/2016 11:29 SA
11
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
Bài toán 2: Tìm ước chung lớn nhất của 2 số nguyên dương M và N
Ý tưởng:
Nếu M=N thì UCLN(M,N)=M (hoặc N)
Nếu MNếu M>N thì UCLN(M,N)=UCLN(M,N-M);
Trình bày thuật toán?
25/11/2016 11:29 SA
12
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
Thuật toán tìm UCLN(M,N):
B1. Nhập M,N;
B2. Nếu M=N thì lấy giá trị chung này làm UCLN chuyển đến bước 5.
B3. Nếu M>N thì M M- N ngược lại N N-M;
B4. Quay lại bước 2
B5. Đưa kết quả UCLN rồi kết thúc.
25/11/2016 11:29 SA
13
Nhật Thiên Thanh
M=N
M>N
N ? N - M
M ? M - N
S
Đ
S
Đ
Nhập M,N
Đưa M ra, kết thúc
Dựa vào thuật toán hãy viết chương trình
25/11/2016 11:29 SA
14
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
Bài toán 2: Tìm ước chung lớn nhất của 2 số nguyên dương M và N
program timuscln;
uses crt;
var m,n:integer;
begin
write(`nhap m:=?`);readln(m);
write(`nhap n:=?`); readln(n);
while m<>n do
if m>n then m:=m-n
else n:= n-m;
writeln(`uscln=`,m);
readln
end.
25/11/2016 11:29 SA
15
Nhật Thiên Thanh
25/11/2016 11:29 SA
16
Nhật Thiên Thanh
3. Lặp với số lần chưa biết trước
câu lệnh While…do
c. Một số lưu ý
Trong vòng lặp WHILE . . . DO:
Nếu ngay lần kiểm tra đầu tiên, mà kết quả là SAI thì các câu lệnh trong vòng lặp sẽ không được thực hiện lần nào.
Số lần kiểm tra chính là số lần lặp
Tùy theo điều kiện mà viết các câu lệnh trong vòng lặp cho phù hợp.
17
Nghiên cứu kỹ cấu trúc RẼ NHÁNH và LẶP
Chuẩn bị tiết ôn tập, luyện tập các loại cấu trúc này, trước khi đến các tiết thực hành.
Xem các bài thực hành và bài tập SGK 49, 50, 51
* 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ẻ: Nhat Thien Thanh
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)