Lặp với số lần chưa biết trước và câu lệnh While-do While Trong đó: + là biểu thức logic; + là các câu lệnh đơn hoặc ghép... Lặp với số lần chưa biết trước và câu lệnh While-do câu lện
Trang 1BÀI 9
Ngày 30/11/2009 Bài 9
Tiết PPCT: 15
Trang 26
3 9
Lấy trứng
Luộc trứng
Trang 33 Lặp với số lần chưa biết trước và câu lệnh While-do
While
Trong đó:
+ <điều kiện> là biểu thức logic;
+ <Câu lệnh> là các câu lệnh đơn hoặc ghép.
Cú pháp:
Trang 4Hoạt động của While-do:
Kiểm tra <điều kiện> ,
3 Lặp với số lần chưa biết trước và câu lệnh While-do
câu lệnh sau từ khóa Do sẽ được thực hiện;
chừng nào <điều kiện> đúng thì
sau đó quay lại kiểm tra điều kiện…, cứ tiếp tục như thế cho đến khi <điều kiện> sai thì kết thúc vòng lặp.
While <điều kiện> do <câu lệnh> ;
Đúng | sai ?Đúng Tôi làm vi cệ
Sai
Tôi không
làm vi cệ
Trang 5S đ kh i ơ ồ ố
S đ kh i ơ ồ ố
3 Lặp với số lần chưa biết trước và câu lệnh While-do
Đi u ki n ? ề ệ
Câu l nh ệ
Đúng
Sai
Trang 63 Lặp với số lần chưa biết trước và
câu lệnh While-do
Tong = 1/a + 1/(a+1) + 1/(a+2) +…+ 1/(a+N) +…
Thuật toán:
B1: tong := 1/a; N := 0;
Bước 1: ?
B2: Nếu 1/(a+N) < 0.0001
thì In kết quả và kết thúc;
B3: N := N+1;
B4: tong := tong + 1/(a+N);
rồi quay lại bước 2;
B5: In kết quả và kết thúc.
Program tong_2;
Uses crt;
Var Begin
Write(‘Nhap gia tri a>2:’); readln(a);
tong := 1/a; N := 0;
while 1/(a+N) > 0.0001 do
begin
n : = n+1;
tong := tong + 1/(a+N);
end;
a, N :integer;
tong :real;
Trang 73 Lặp với số lần chưa biết trước và câu lệnh While-do
Program tong_2;
Uses crt;
Var Begin
Readln End
Write(‘Nhap gia tri a>2:’); readln(a); tong := 1/a; N := 0;
while 1/(a+N) > 0.0001 do
begin
n : = n+1;
tong := tong + 1/(a+N);
end;
a, N :integer;
tong :real;
Writeln(‘Ket qua tong la:’, tong:8:2);
Sơ đồ khối
N N + 1
S S +1/(a + N)
1/
(a+N)
>
0.0001
In k quả;
S 1/a
N 0
Đúng
Sai
Trang 8Củng cố
trường hợp nào?
While <điều kiện> do <câu lệnh> ;
Trang 9BÀI TẬP VỀ NHÀ
chung lớn nhất của 2 số nguyên dương” ?