1. Giáo viên: Giáo án, sgk, Projector, bảng phụ chứa các chương trình mẫu.2. Học sinh: sgk 2. Học sinh: sgk
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: (7 phút) Kiểm tra bài cũ
Hđ của GV Hđ của HS
1. Trình bày các dạng cấu trúc câu lệnh lặp với số lần biết
trước?
- Gọi hs lên trả lời
2. Viết CT nhập vào 2 số nguyên dương a, b (a<b), tính
và đưa ra màn hình tổng các số nguyên trong phạm vi từ a đến b.
- Cho hs xung phong. Nhận xét, đánh giá, cho điểm
Hs1: trả lời câu hỏi 1
Hs2: trình bày chương trình trên bảng Var a, b, i , S : longint;
Begin
Write(‘Nhap a va b (a<b): ‘); Readln(a, b); S := 0;
For i := a To b Do S := S + i ; Writeln(‘Ket qua: ’, S); Readln
End.
2. Hoạt động 2: (15 phút) Rèn luyện kĩ năng vận dụng câu lệnh For và câu lệnh rẽ nhánh If
Hđ của GV Hđ của HS Nd ghi bảng
Dẫn dắt: Từ bài toán KTBC ở trên, nếu ta
y/cầu tính và đưa ra màn hình tổng các số chẵn và tổng các số lẻ trong phạm vi từ a đến b.
- Ghi bảng (sửa lại nội dung đề bài toán) Y/cầu hs phân tích đề bài và trả lời câu hỏi. - So sánh với bài toán trước thì có gì khác? - Ta cần đưa ra màn hình mấy giá trị? - Việc chính cần thực hiện trong câu lệnh lặp là gì?
- Hãy mô tả việc trên bằng lệnh lặp For?
-Ghi đề bài toán
-Lắng nghe, phân tích bài toán và trả lời -Tl: tính tổng các số chẵn và tổng các số lẻ riêng -Tl: 2 giá trị (S1: tổng chẵn; S2: tổng lẻ) Tl:
Kiểm tra biến đếm i : nếu i là chẵn thì S1:=S1+i ngược lại (i là lẻ)thì S2:=S2+i.
BÀI TẬP
Bài 1: Viết CT nhập vào 2 số nguyên dương a, b (a<b), tính và đưa ra màn hình tổng các số chẵn và tổng các số lẻ trong phạm vi từ a đến b.
- Y/cầu hs cả lớp tự hoàn thành chương trình. Cho 1 hs lên bảng trình bày.
* Chuẩn hóa lại bài làm của hs bằng chương trình mẫu (treo chtrình đã chuẩn bị trên bảng phụ) Đứng tại chổ trả lời: For I:=a To b Do If I mod 2 =0 then S1:=S1+I else S2:=S2+I ; Trình bày trên bảng. Quan sát chtrình của giáo viên và ghi nhớ. Var a, b, i , S1, S2 : longint; Begin Write(‘Nhap a va b (a<b): ‘); Readln(a, b); S1 := 0; S2 := 0; For i := a To b Do If i mod 2 = 0 then S1 := S1 + i else S2 := S2 + i; Writeln(‘Tong chan: ’, S1, ’ Tong le: ’,S2); Readln End.
3. Hoạt động 3: (20 phút) Tiếp tục vận dụng câu lệnh lặp For để giải quyết một bài toán đơn giản.
Hđ của GV Hđ của HS Nd ghi bảng
1. Nêu đề bài toán (Ghi bảng)
- Cách tính tiền gửi tiết kiệm hàng tháng như thế nào?
- Vậy, công thức tính tiền thu được sau mỗi tháng như thế nào?
- câu lệnh lặp này lặp bao nhiêu lần?
- Xác định giá trị đầu và giá trị cuối của câu lệnh For để thực hiện việc lặp trên?
2. Y/cầu hs viết chương trình vào vở, cho 1
hs trình bày lên bảng.
* Chuẩn hóa lại bài làm của hs bằng chương trình mẫu (treo chtrình đã chuẩn bị trên bảng phụ)
3. (Nếu còn thời gian)
Hỏi sau 12 tháng gửi (không rút tiền lãi hàng tháng), ông ta được số tiền nhiều hơn số tiền ban đầu là bao nhiêu?
Ta phải sửa lại chtrình trên như thế nào?
1. Đọc đề bài toán, phân tích
và trả lời câu hỏi:
Tl: Với số tiền S, sau mỗi tháng sẽ có lãi là: 0.015*S. Số tiền này sẽ cộng vào số tiền ban đầu để tính lãi cho tháng tiếp theo.
Tl: S := S + 0.015*S; Tl: 12 lần
Tl: gtrị đầu là 1; gtrị cuối là 12.
2. Thảo luận và tự viết
chương trình
Quan sát chtrình của giáo viên và ghi nhớ.
3. Suy nghĩ và trả lời
Bài 2: Ông Ba có số tiền là S,
ông gửi tiết kiệm ngân hàng với lãi suất 1.5%/tháng. Hỏi sau 12 tháng gửi (không rút tiền lãi hàng tháng), ông ta được số tiền là bao nhiêu?
Var s:real; i:byte; Begin
Write(‘So tien ban dau: ’); Readln(S);
For i:= 1 To 12 Do
S:= S + 0.015*S; Writeln(‘So tien nhan duoc
la: ’,S:8:3); Readln
End. IV. ĐÁNH GIÁ CUỐI BÀI (3phút)
Câu hỏi, bài tập về nhà
Làm một số bài trong sách bài tập Tin học 11: 3.23, 3.29; 3.31
Ngày soạn: 16/10/07
Tiết 14 CẤU TRÚC LẶP (tiết 3/3)
I. MỤC TIÊU1. Kiến thức 1. Kiến thức
- Biết được ý nghĩa của cấu trúc lặp có số lần lặp chưa biết trước - Biết được cấu trúc chung của lệnh lặp While trong NNLT Pascal.
2. Kĩ năng
- Phân biệt được sự giống và khác nhau giữa cấu trúc lặp For và While. - Sử dụng đúng lệnh lặp While trong lập trình.
- Bước đầu biết lựa chọn đúng dạng lệnh lặp để lập trình giải quyết một số bài toán đơn giản.