- Biết ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc đến khi một điều kiện nào đó được thoả mãn.. II.[r]
(1)Tiết thứ: 49
Ngày soạn: 25/02/2010
Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC (Tiết 1)
A Mục tiêu: I Kiến thức:
- Biết nhu cầu cần có cấu trúc lặp với số lần chưa biết trước ngôn ngữ lập trình - Biết ngơn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để dẫn máy tính thực lặp lặp lại cơng việc đến điều kiện thoả mãn
II Kĩ năng:
- Nhận biết đâu hoạt động lặp với số lần chưa biết trước
III Thái độ:
- Nghiêm túc, rèn luyện tính xác, cẩn thận cho học sinh
B Phương pháp:
- Vấn đáp, thuyết trình, trình chiếu
C Chuẩn bị: I Giáo viên:
- Nội dung bài, máy tính, SGK
II Học sinh:
- Chuẩn bị nội dung học nhà, SGK
D Tiến trình lên lớp: I Ổn định tổ chức: (1’) II Bài cũ: (5’)
- Geogebra phần mềm có chức gì?
- Em cho biết cơng cụ làm việc phần mềm Geogebra?
III Bài mới:
Đặt vấn đề: (2’)
Chúng ta làm quen với hoạt động lặp với số lần xác định trước Vậy với hoạt động lặp với số lần chưa biết trước nào?
(2)Hoạt động thầy trò Nội dung kiến thức * Hoạt động 1: (15’)
GV: Yêu cầu HS nghiên cứu ví dụ SGK lấy ví dụ hoạt động lặp với số lần chưa biết trước?
HS: Nghiên cứu đưa ví dụ GV: Nhận xét, bổ sung
GV: Giới thiệu ví dụ SGK Yêu cầu HS đưa ý tưởng thuật toán giải thích ý tưởng? HS: Nghiên cứu trình bày
GV: Phân tích thuật tốn để HS nắm bắt bước giải thuật
HS: Chú ý, ghi
GV: Đưa sơ đồ khối giải thích cho học sinh hiểu
HS: Chú ý nghe giảng ghi
1 Các hoạt động lặp với số lần chưa biết trước
a) Ví dụ 1:
(SGK)
b) Ví dụ 2:
- Nếu cộng n số tự nhiên (n = 1, 2, ) Cần cộng số tự nhiên để ta nhận tổng Tn nhỏ lớn
1000?
* Thuật toán:
- Bước 1: S 0, n 0;
- Bước 2: Nếu S ≤ 1000, n n + 1; Ngược lại chuyển tới bước
- Bước 3: S S + n quay lại bước - Bước 4: In kết
* Ta có sơ đồ khối:
* Nhận xét : Để viết chương trình dẫn máy tính thực hoạt động lặp ví dụ trên, ta sử dụng câu lệnh có dạng lặp với số lần chưa biết trước
* Hoạt động 2: (17’)
- GV: Có thể sử dụng lệnh lặp với số lần lặp chưa biết trước chương trình lập trình Sau ta xét câu lệnh ví dụ TP
- GV: Giới thiệu cú pháp lệnh while …do
- HS: Quan sát, lắng nghe
2 Ví dụ lệnh lặp với số lần chưa biết trước
Trong Pascal câu lệnh lặp với số lần chưa biết trước có dạng: while <điều kiện> do <câu lệnh>; trong đó:
- Điều kiện thường phép so
(3)- GV: Yêu cầu HS đọc phân tích ví dụ - HS: Đọc trả lời
- GV: Giới thiệu chạy chương trình cho HS quan sát
- HS: Quan sát
- GV: Yêu cầu HS chạy lại chương trình với sai_so 0.002 ; 0.001 ; 0.005 ;
- Câu lệnh câu lệnh đơn giản
hay câu lệnh ghép
Câu lệnh lặp thực sau:
Bước : Kiểm tra điều kiện
Bước : Nếu điều kiện SAI, câu lệnh bị bỏ qua việc thực lệnh lặp kết thúc Nếu
điều kiện đúng, thực câu lệnh quay lại bước
Ví dụ Với giá trị n ( n>o ) thì
1
n <
0.005
1
n < 0.003? Chương trình dưới
đây tính số n nhỏ để
1
n nhỏ 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
IV Củng cố (3’):
- Giáo viên nhấn mạnh lại nội dung tiết học
V Dặn dò (2’):
- Về nhà xem lại kiến thức học - Chuẩn bị phần học
VI Rút kinh nghiệm :