Câu lệnh lặp được thực hiện như thế nào?. Câu lệnh Điều kiện?. trong vßng lÆp cho phï hîp... Ngoài cấu trúc lặp với số lần lặp biết trước, các ngôn ngữ lập trình còn có các câu lệnh lặp
Trang 1KIỂM TRA BÀI CŨ
Câu 1: Hãy ghi cú pháp của câu lệnh lặp For…do? C¸ch tÝnh sè vßng lÆp?
Câu 2: Hãy viết chương tình tính tổng của 5 số tù nhiªn đầu tiên ?
Var i, Tong: integer;
Begin
Tong:=0;
For i: = 1 to 5 do
Tong:= Tong + i;
Write(‘Tong= ’,Tong);
Readln;
End.
Lặp với số lần chưa biết trước
Tuần 27
Tiết 51
Bài 8
Trang 2While < điều kiện > do < câu lệnh >;
Trong đó:
- Điều kiện thường là các 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.
Câu lệnh lặp được thực hiện như thế nào ?
Câu lệnh
Điều kiện
?
Đúng
Sai
Kết thúc
Trang 3Lặp với số lần chưa biết trước
Tuần 27
Tiết 51
Bài 8
2 Ví dụ về lệnh lặp với số lần chưa biết trước:
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.
Uses crt;
Var x: Real;
n: Integer;
Const Sai_So=0.003;
Begin
Clrscr;
x:=1; n:=1;
While x >= Sai_So do Begin
n:=n+1; x:=1/n End;
Writeln(‘So n nho nhat de 1/n < ‘,Sai_So:6:4, ‘ la ‘,n);
Readln;
End.
Trang 4Ví dụ 4: Viết chương tình tính tổng n số trong ví dụ 2
Var S,n:Integer;
Begin
S:=0; n:=1;
While S<=1000 do Begin
S:=S+n; n:=n+1 End;
Writeln(‘So n nho nhat de tong > 1000 la ‘, n);
Writeln(‘Tong dau tien > 1000 la ‘, S);
Readln
End.
Trang 5Lặp với số lần chưa biết trước
Tuần 27
Tiết 51
Bài 8
2 Ví dụ về lệnh lặp với số lần chưa biết trước:
Ví dụ 5: Viết chương tình tính tổng T=1+1/2+1/3+…+1/100
T:=0;
For i:=1 to 100 do
T:=T+1/i;
Writeln(T);
T:=0;
i:=1;
While i<= 100 do
Begin T:=T+1/i;
i:=i+1 End;
Writeln(T);
For…do
While…do
Trang 6Var a:Integer;
Begin
a:=5;
Writeln(‘A’);
End.
Var a:Integer;
Begin
a:=5;
Begin Writeln(‘A’);
a:=a+1;
End;
End.
Trang 7* Mét sè chó ý trong vßng lÆp While do …
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.
trong vßng lÆp cho phï hîp.
Trang 8GHI NHỚ:
1 Ngoài cấu trúc lặp với số lần lặp biết trước, các ngôn ngữ lập trình còn có các câu lệnh lặp với số lần chưa biết trước
2 While…do là câu lệnh lặp với số lần chưa biết trước trong Pascal
Trang 9CỦNG CỐ
Bài tập 8.3 sbt/67: Cõu lệnh nào sau đõy sai và sai ở đâu?
A While i:=1 do t:=10;
B While a<=b; do write(‘b khong nho hon a’);
C While 1=1 do write(‘Toi lap trinh gioi’);
D i:=1; x:=5;
while i<x do i:=i+1; write(‘Gia tri cua i la ‘ , i);
Trả lời
(A) Sai, thừa dấu hai chấm đầu tiên (B) Sai, thừa dấu chấm phẩy trước từ khoá do
(C) Sai, vòng lặp vô hạn do điều kiện luôn đúng (D) Sai, vòng lặp được thực hiện nhưng chỉ có giá trị cuối cùng của i được in ra Nếu muốn in ra các giá trị của
i thì thiếu hai từ khoá begin và end để gộp hai câu lệnh cuối thành câu lệnh ghép
Trang 10cña x lµ bao nhiªu?
X:=0; tong:=0;
While tong<=20 do Begin Writeln(tong);
Tong:=tong+1;
End;
X:=tong;
B 21
Trang 11DẶN DÒ
- Về học bài này
- Tập trả lời các câu hỏi và bài tập trang 71 SGK
- Xem trước néi dung bµi TH, giê sau TH