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