Kiến thức: Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán; Hiểu cấu trúc lặp với số lần biết trước; Viết được thuật toán của một số bài toán đơn giản.. Kỹ năng Biết diễ
Trang 1Tuần: 12 Tiết: 12 -Ngày soạn: 18/11/2007
Ngày dạy: Lớp:
Chương III: Cấu trúc rẽ nhánh và lặp
§10 Cấu trúc lặp
I Mục đích, yêu cầu:
1 Kiến thức:
Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán;
Hiểu cấu trúc lặp với số lần biết trước;
Viết được thuật toán của một số bài toán đơn giản
2 Kỹ năng
Biết diễn đạt đúng câu lệnh lặp với số lần lặp biết trước;
Bước đầu có khả năng phân tích bài toán đơn giản để áp dụng cấu trúc lặp;
Biết tạo câu lệnh ghép khi cần thiết
3 Thái độ:
Tiếp tục tạo sự ham muốn giải các bài tập bằng lập trình trên máy tính;
Rèn luyện phẩm chất cần thiết của người lập trình như: xem xét giải quyết vấn đề một cách cẩn thận, chu đáo, có sáng tạo, không thỏa mãn kết quả ban đầu đạt được
II Phương pháp - phương tiện dạy học:
Thuyết trình, nêu câu hỏi, gợi mở, tóm tắt và ghi ý chính;
Giáo viên chuẩn bị: Giáo án, phòng máy nối mạng LAN, cài đặt Turbo Pascal;
Học sinh chuẩn bị: Đọc trước nội dung bài, sách giáo khoa, vở ghi
III NộI dung dạy – học:
Nội dung bài giảng Hoạt động của thầy Hoạt động của trò
Ổn định lớp;
Ghi sổ đầu bài
Chào thầy
Cán bộ lớp báo sĩ số
1 Lặp
Trong một số thuật toán, có
những thao tác phải thực hiện lặp
đi lặp lại một số lần
Cấu trúc lặp mô tả thao tác lặp
và phân biệt 2 loại: lặp với số lần
biết trước và lặp với số lần chưa
biết trước
Mọi ngôn ngữ lập trình đều có
các câu lệnh để mô tả cấu trúc
lặp
Ghi tên bài
Yêu cầu HS đọc sách và nêu sự khác biệt giữa 2 bài toán
Nhận xét câu trả lời của HS, chốt lại ý chính
Mở sách giáo khoa,
vở ghi, ghi bài
Lắng nghe, đọc sách, trả lời
Lắng nghe, quan sát, ghi bài
2 Lặp với số lần biết trước và
câu lệnh for - do
Bài toán: Tính tổng
100
1
3
1 2
1
1 + + + +
=
S
Nêu bài toán đặt vấn đề
Phân tích bài toán:
Khởi tạo giá trị cho S = 1; sau đó với i nhận giá trị lần lượt tăng từ 2 đến 100 thì giá trị của S lần lượt
Lắng nghe, quan sát, ghi bài
Trang 2S:= 1;
for i:=100 downto 2 do S:=S+1/i;
Trong đó:
- biến đếm: là biến đơn có kiểu
nguyên hoặc kiểu kí tự;
- giá trị đầu, giá trị cuối: là biểu
thức cùng kiểu với biến đếm và
giá trị đầu phải nhỏ hơn hoặc
bằng giá trị cuối;
- Dạng tiến:Với biến đếm lần lượt
nhận các giá trị liên tiếp tăng từ
giá trị đầu đến giá trị cuối, thì câu
lệnh được thực hiện tuần tự
- Dạng lùi: Với biến đếm lần lượt
nhận các giá trị liên tiếp giảm từ
giá trị cuối đến giá trị đầu, thì câu
lệnh được thực hiện tuần tự
Chú ý: Giá trị của biến đếm được
điều chỉnh tự động, vì vậy câu
lệnh sau do không được thay đổi
giá trị của biến đếm
Viết câu lệnh lặp với số lần biết trước dạng lùi để tính tổng của bài toán trên?
Nhận xét, chốt lại câu trả lời
Thuyết trình, đặt câu hỏi gợi mở, vấn đáp
Nêu hoạt động của lệnh for – do dạng tiến?
Nhận xét, chốt lại ý chính
Nêu hoạt động của lệnh for – do dạng lùi?
Nhận xét, chốt lại ý chính
Xung phong trả lời Lắng nghe, quan sát, ghi bài
Lắng nghe, quan sát, trả lời câu hỏi; ghi bài Đọc sách, trả lời
Lắng nghe, quan sát, ghi bài
Đọc sách, trả lời
Lắng nghe, quan sát, ghi bài
IV Củng cố:
Cấu trúc câu lệnh for – do dạng tiến? Hoạt động của nó như thế nào?
Cấu trúc câu lệnh for – do dạng lùi? Hoạt động của nó như thế nào?
V Dặn dò:
Học kỹ nội dung bài hôm nay; xem nội dung các ví dụ áp dụng trong sgk trang 44-45;
Làm bài tập:5.a trang 51 sách giáo khoa
VI Rút kinh nghiệm:
Trang 3
Tuần: 13 Tiết: 13 -Ngày soạn: 21/11/2007
Ngày dạy: Lớp:
Chương III: Cấu trúc rẽ nhánh và lặp
§10 Cấu trúc lặp
I Mục đích, yêu cầu:
1 Kiến thức:
Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán;
Hiểu cấu trúc lặp với số lần biết trước;
Viết được thuật toán của một số bài toán đơn giản
2 Kỹ năng
Biết diễn đạt đúng câu lệnh lặp với số lần lặp biết trước;
Bước đầu có khả năng phân tích bài toán đơn giản để áp dụng cấu trúc lặp;
Biết tạo câu lệnh ghép khi cần thiết
3 Thái độ:
Tiếp tục tạo sự ham muốn giải các bài tập bằng lập trình trên máy tính;
Rèn luyện phẩm chất cần thiết của người lập trình như: xem xét giải quyết vấn đề một cách cẩn thận, chu đáo, có sáng tạo, không thỏa mãn kết quả ban đầu đạt được
II Phương pháp - phương tiện dạy học:
Thuyết trình, nêu câu hỏi, gợi mở, hoạt động nhóm, tóm tắt và ghi ý chính;
Giáo viên chuẩn bị: Giáo án, phòng máy nối mạng LAN, cài đặt Turbo Pascal;
Học sinh chuẩn bị: Đọc trước nội dung bài, sách giáo khoa, vở ghi
III NộI dung dạy – học:
Nội dung bài giảng Hoạt động của thầy Hoạt động của trò
Ổn định lớp;
Ghi sổ đầu bài
Chào thầy
Cán bộ lớp báo sĩ số
Bài cũ:
Viết cú pháp lệnh for – do dạng
tiến và dạng lùi và nêu hoạt động
của lệnh?
Nêu câu hỏi
Gọi HS lên viết bảng trả lời
Gọi HS nhận xét
Nhận xét, sửa bài, cho điểm
Lắng nghe
Lên bảng trả lời
Nhận xét
2 Lặp với số lần biết trước và
câu lệnh for - do
Ví dụ 1: Chương trình tính tổng:
100
1
2
1 1
1
1
+ + + +
+
+
+
=
a a
a
a
S
a Áp dụng dạng For tiến:
Program Tong_1;
Uses crt;
Var S: real;
a, N: integer;
Begin
Clrscr;
Write(‘Nhap gia tri cua a: ‘);
Readln(a);
Nêu ví dụ 1, phân tích bài toán dựa vào thuật toán Tong_1a trong sách giáo khoa trang 43
Áp dụng lệnh For tiến để viết câu lệnh thực hiện tính tổng trên như thế nào?
Trình bày chương trình áp dụng dạng For tiến, kết hợp giảng và nêu câu hỏi gợi mở để trả lời
Cần khai báo những biến nào?
Kiểu dữ liệu của biến là gì? Vì sao?
Lắng nghe, đọc sách, ghi bài
Lắng nghe, quan sát, trả lời
Chú ý lắng nghe, quan sát, trả lời và ghi bài
Trang 4S := 1.0/a;
For N := 100 downto 1 do
S := S + 1.0 / (a+N);
Writeln(‘Tong la: S = ‘,S:8:4);
Readln
End
hiện
Gọi 1 HS lên viết chương trình trên bảng
Gọi HS nhận xét, bổ sung
Nhận xét, sửa bài, cho điểm
hướng dẫn
Viết chương trình, quan sát
Nhận xét, bổ sung Lắng nghe, quan sát, ghi bài
Ví dụ 2: Chương trình thực hiện
nhập từ bàn phím hai số nguyên
dương M và N (M<N), tính và đưa
ra màn hình tổng các số chia hết
cho 3 hoặc 5 trong phạm vi từ M
đến N
Program Vi_du_2;
Uses crt;
Var M, N, i: integer;
T: longint;
Begin
Clrscr;
Writeln(‘Nhap so M < N’);
Write(‘M = ‘); Readln(M);
Write(‘N = ‘); Readln(N);
T := 0;
For i := M To N Do
If (i mod 3=0)or(i mod 5=0)
then T := T + i;
Writeln(‘Ket qua: ‘,T);
Readln
End
Nêu ví dụ 2 Phân tích bài toán, dẫn dắt đi đến áp dụng câu lệnh tương ứng để viết chương trình
Cần có một biến đếm chạy từ M đến N, kiểm tra nếu biến đếm chia hết cho 3 hoặc 5 thì cộng giá trị của biến đếm vào biến tổng
Như vậy, ta cần áp dụng những lệnh nào để giải quyết việc này?
Gọi HS lên viết đoạn chương trình thực hiện việc trên
Nhận xét, sửa lại cho đúng
Từ đó, các em hãy hoạt động theo nhóm, suy nghĩ để viết chương trình thực hiện bài toán này
Gọi đại diện mỗi nhóm 1 em lên trình bày bài làm
Nhận xét, chốt lại chương trình đúng
Lắng nghe, ghi bài
Chú ý lắng nghe
Trả lời câu hỏi:
Lệnh for – do và lệnh
if – then
Xung phong lên viết đoạn chương trình theo yêu cầu
Quan sát, lắng nghe Hoạt động nhóm, viết chương trình sau đó lên trình bày
Lắng nghe, quan sát, ghi bài
IV Củng cố:
Cách diễn đạt và vận dụng câu lệnh lặp for – do vào bài toán cụ thể
V Dặn dò:
Xem trước nội dung phần 3 của bài 10 trang 45 – 48;
Làm các bài tập 1 – 6 trang 50 – 51 sách giáo khoa
VI Rút kinh nghiệm:
Trang 5
Tuần: 14 Tiết: 14 -Ngày soạn: 30/11/2007
Ngày dạy: Lớp:
Chương III: Cấu trúc rẽ nhánh và lặp
§10 Cấu trúc lặp
I Mục đích, yêu cầu:
1 Kiến thức:
Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán;
Hiểu cấu trúc lặp kiểm tra điều kiện trước;
Biết cách vận dụng đúng từng loại cấu trúc lặp vào tình huống cụ thể
2 Kỹ năng
Biết diễn đạt đúng câu lệnh lặp kiểm tra điều kiện trước;
Bước đầu có khả năng phân tích bài toán đơn giản để áp dụng cấu trúc lặp;
Biết tạo câu lệnh ghép khi cần thiết
3 Thái độ:
Tiếp tục tạo sự ham muốn giải các bài tập bằng lập trình trên máy tính;
Rèn luyện phẩm chất cần thiết của người lập trình như: xem xét giải quyết vấn đề một cách cẩn thận, chu đáo, có sáng tạo, không thỏa mãn kết quả ban đầu đạt được
II Phương pháp – phương tiện dạy học:
Thuyết trình, nêu câu hỏi, gợi mở, tóm tắt và ghi ý chính;
Giáo viên chuẩn bị: Giáo án, phòng máy nối mạng LAN, cài đặt Turbo Pascal;
Học sinh chuẩn bị: Đọc trước nội dung bài, sách giáo khoa, vở ghi
III NộI dung dạy – học:
Nội dung bài giảng Hoạt động của thầy Hoạt động của trò
Ổn định lớp;
Ghi sổ đầu bài
Chào thầy
Cán bộ lớp báo sĩ số
Bài cũ:
Viết chương trình tính tổng:
100
1
2
1 1
1
1
+ + + +
+
+
+
=
a a
a
a
S
Nêu câu hỏi Gọi HS lên bảng viết chương trình
Nhận xét, sửa bài, cho điểm
Lắng nghe, quan sát, lên bảng trả lời
3 Lặp với số lần chưa biết
trước và câu lệnh while - do
Bài toán: Tính tổng
1
2
1 1
1
1
+ + + + +
+
+
+
=
N a a
a
a
S
cho đến khi 1 < 0 , 0001
+N a
Thuật toán:
Bước 1: S←1/a; N←0;
Bước 2: Nếu 1/(a+N)<0,0001 thì
chuyển đền bước 5;
Bước 3: N←N+1;
Bước 4: S←S+1/(a+N); rồi quay
Nêu bài toán đặt vấn đề
Nêu thuật toán giải bài toán trên
Như vậy, việc lặp với số lần chưa biết trước chỉ kết thúc khi một
Lắng nghe, quan sát, ghi bài
Lắng nghe, quan sát, ghi bài
Trả lời: Nhận giá trị
Trang 6begin
N := N+1;
S := S+1/(a+N);
end;
Sơ đồ khối:
Hoạt động: Trong khi điều kiện
còn đúng thì câu lệnh còn được
thực hiện
Ví dụ 1: Chương trình tính
tổng trên
Program Tong_3;
Uses crt;
Var S: real;
a, N: integer;
Begin
Write(‘Hay nhap gia tri cho a’);
Readln(a);
S := 1/a; N := 0;
While 1/(a+N) >= 0.0001 do
Begin
N := N+1;
S := S+1/(a+N);
End;
Writeln(‘Tong S = ‘,S:8:4);
Readln
End
Ví dụ 2: Tìm ước chung lớn
nhất (UCLN) của hai số nguyên
dương M và N
(Sgk_trang 47-48)
Dựa vào sơ đồ khối hãy nêu hoạt động của lệnh lặp với số lần chưa biết trước while – do?
Nhận xét, chốt lại ý chính
Bây giờ, các em hãy gấp sách lại, hoạt động theo nhóm viết chương trình giải bài toán trên
Quan sát, hướng dẫn HS hoạt động, trao đổi viết chương trình
Gọi đại diện các nhóm lên trình bày bài làm của nhóm mình
Gọi HS nhận xét bài làm của từng nhóm
Nhận xét, chốt lại ý chính
Yêu cầu HS đọc sách xem lại thuật toán, sơ đồ khối của bài toán sau đó suy nghĩ viết chương trình
Lắng nghe, quan sát, trả lời câu hỏi; ghi bài
Lắng nghe, quan sát, ghi bài
Lắng nghe, hoạt động nhóm
Đại diện nhóm lên trình bày bài
Quan sát, lắng nghe, nhận xét
Lắng nghe, quan sát, ghi bài
Lắng nghe, quna sát, đọc sách, viết chương trình
IV Củng cố:
Cấu trúc rẽ nhánh dạng thiếu; dạng đủ;
Câu lệnh ghép;
Cấu trúc lặp với số lần biết trước; lặp với số lần chưa biết trước
Đúng Câu lệnh
Sai Điều
kiện
Trang 7trên ba cấu trúc cơ bản là: cấu trúc tuần tự; cấu trúc rẽ nhánh và cấu trúc lặp.
V Dặn dò:
Học kỹ nội dung bài 10;
Làm các bài tập 7, 8 trang 51 sách giáo khoa;
Ôn tập kỹ các nội dung trọng tâm đã học trong học kì I Trả lời các câu hỏi trắc nghiệm do giáo viên phát Tiết sau ôn tập học kì I
VI Rút kinh nghiệm: