Tiết 13: §10 CẤU TRÚC LẶP (T1)
*Nhận
xe ït:
Bài 1: S ố lầ n lặp c hư a biết trư ớc ,như ng việc
c ộng vào tổ ng kết thúc khi 1/n<E
Bài 2:S ố lầ n lặp là 100 và việc c ộng vào tổ ng kết thúc khi đã thư ûc hiện việc c ộng 100 lầ n
-Cấu trúc lặp phân thành 2 lo ại:
+lặp với s ố lầ n c hư a biết trư ớc +lặp với s ố lầ n biết trư ớc
-Các NNLT đề u c o ï c âu lệnh để mô tả c ấu trúc
lặp
Trang 2Tiết 13: §10 CẤU TRÚC LẶP (T1)
1.LẶP:
2.LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC VÀ CÂU LỆNH WHILE-DO:
a/Bài to án:
*Xác đị nh bài to án:
Input: s ố E Output: Tổ ng S
*Tổ chư ïc dư î liệu:
1
3
1 2
1
=
n S
Cho đến khi 1/n < E, E là s ố thư ûc vô c ùng nho í nhập vào
tư ì bàn phí m
Tí nh và đư a kết quả ra màn hì nh tổ ng :
Biến E,S :re al,n:byte
Trang 33.Thuật
toán:
S
Kết thúc
Đ
Bắt đầu Nhập E
S :=0;
n := 1;
S :=0;
n := 1;
1/n>=E
S:= S+ 1/n;
n:=n+1;
S:= S+ 1/n;
n:=n+1;
In tổng S
Trang 4* Cấu trúc :
lặp>;
Tiết 13: §10 CẤU TRÚC LẶP (T1)
B/Câu lệnh While -Do :
* Giải thí c h: -WHILE, DO : tư ì kho á
-<Điề u kiện>: Điề u kiện để lặp lại: Biể u thư ïc lo g ic
-<Câu lệnh c ầ n lặp> là một c âu lệnh đơn
ho ặc g he ïp
*S ư û thư ûc hiện: *S ơ đồ thư ûc hiện:
b1 :Tí nh g iá trị c ủa <điề u kiện>
S
Đ
Câu lệnh
c ầ n lặp
Câu lệnh
c ầ n lặp
Điều kiện
b2 :Nếu <điề u kiện> c o ï giá trị
đúng thì thư ûc hiện <c âu lệnh c ầ n
lặp>, quay lại b1
Trang 5Đ
Câu lệnh c ần lặp
Câu lệnh c ần lặp
Điều kiện
Tiết 13: §10 CẤU TRÚC LẶP (T1)
*Ví dụ:
-Điề u kiện để lặp: 1/n >=E
-Lệnh c ầ n lặp: S :=S +1/n
n:=n+1 While 1/n >= E do
Be gin
S :=S +1/n n:=n+1
e nd;
Trang 63.Thuật
toán:
S
Kết thúc
Đ
Bắt đầu Nhập E
S :=0;
n := 1;
S :=0;
n := 1;
1/n>=E
S:= S+ 1/n;
n:=n+1;
S:= S+ 1/n;
n:=n+1;
In tổng S
Trang 7Đ
Câu lệnh c ần lặp
Câu lệnh c ần lặp
Điều kiện
Tiết 13: §10 CẤU TRÚC LẶP (T1)
Pro g ram TINHTONG1;
VAR E,S : REAL; N: BYTE;
BEGIN
WRITE(‘HAY NHAP VAO GIA TRI CHO E’);
READLN(E);
S :=0; N:=1
While 1/n >= E do Be gin
S :=S +1/n;
n:=n+1;
e nd;
WRITELN(‘TONG CAN TIM LA’, S :6:2);
READLN;
END.
C/Chư ơng trì nh c ho bài to án
1:
Trang 8Thuật to án bài tì m US CLN:
Kết thúc
S
Bắt đầu Nhập A,B
In USCLN là A A<>B
A:=A - B
Đ
S A>B
Đ
B:=B - A
Trang 9Câu1: hãy c ho biết kết quả c ủa đo ạn c hư ơng trì nh s au:
A:=5; B:=7;
WHILE A>B DO B:=B+2;
B:=B-2;
WRITE(‘B=‘, B);
Trang 10
Câu 2: hãy c ho biết kết quả c ủa đo ạn c hư ơng
trì nh s au:
A:=6; B:=4;
WHILE A<>B DO
IF A>B THEN A:=A-B ELS E B:=B-A;
WRITE(‘B=‘, B);
Trang 11
CẤU TRÚC LẶP
LẶP VỚI S Ố LẦN
CHƯA BIẾT TRƯỚC
LẶP VỚI S Ố LẦN
CHƯA BIẾT TRƯỚC LẶP VỚI S Ố LẦN BIẾT
TRƯỚC
LẶP VỚI S Ố LẦN BIẾT TRƯỚC
CÂU LỆNH WHILE –
D0
CÂU LỆNH WHILE –
D0
CÂU LỆNH
FOR-DO
CÂU LỆNH
FOR-DO
CẤU TRÚC:
WHILE <ĐIỀU KIỆN>
DO <c âu lệnh c ần
lặp>;
CẤU TRÚC:
DO <c âu lệnh c ần
lặp>;
S
Đ
Câu lệnh c ần lặp
Câu lệnh c ần lặp
Điều kiện