Giáo án Tin Hc 11
Phương Thị Chang CNTT - ĐHSPHN 1
Giáo án s 2
BÀI 10
CẤU TRÚC LẶP (3 tiết)
I. MC ĐÍCH, YÊU CẦU CHUNG:
Yêu cu đối với học sinh sau khi hc song bài này:
- Hiu được nhu cầu của cấu trúc lặp trong biểu diễn thuật toán;
- Hiu được cu trúc lặp với s lần cho trước, cấu trúc lặp kim tra điều
kiện trước;
- Biết cách vận dng đúng đắn tng loại cấu trúc lặp vào tình huống c
th;
- t được thuật toán của mt s i toán đơn giản s dụng lệnh
lặp;
- Viết đúng các lnh lặp với s ln biết trước, lệnh lặp kiểm tra điu kiện
trước;
- Viết được thuật tn của bài toán đơn gin.
II. PHƯƠNG PHÁP, PHƯƠNG TIỆN:
1. Phương pháp:
- Kết hợp kiến thức trong sgk và các kiến thức trong các sách tham
khảo và các tư liệu khác (nếu). Nếu nhà trường có máy chiếu, có th
chuẩn b các slide để trình chiếu hoặc chạy th đoạn chương trình để c lp
ng theo dõi.
- Hình thc giảng dậy: thuyết trình, vn đápgiải thích (nếu cần)
- Bàiy s dậy trong 3 tiết:
+ Tiết 1: gm mục 1 và mục 2 (phn lý thuyết).
+ Tiết 2: gm mục 2 (phần ví d và luyện tập).
+ Tiết 3: gm có mục 3
2. Phương tiện:
- Sách giáo khoa tin hc lớp 11.
- V ghi lý thuyết.
- Giáo án.
- Sách tham kho các trang thiết b tin học như máy tính, máy chiếu
(nếu).
----------------------------------------------------------------------------------------------
Giáo án Tin Hc 11
Phương Thị Chang CNTT - ĐHSPHN 2
Cấu trúc lặp (Tiết 1)
I. Mục đích và yêu cầu
- Hiu v nhu cầu của cấu trúc lặp trong biểu din thuật toán;
- Hiểu được cấu trúc lặp với s lần biết trước, cấu trúc lặp kim tra điu
kiện trước;
- Biết cách vận dụng đúng đắn cấu trúc lặp trước vào tình huống phù hợp;
- Viết đúng lnh vi s lần lặp biết trước;
- Mô t được thuật toán của một s bài toán đơn giản có s dụng câu lnh
lặp với s lần biết trước.
II. Phương pháp, phương tiện
1. Phương pháp:
- Kết hp kiến thức trong sgk vàc kiến thc trong các sách tham khảo
và các tư liệu khác (nếu có). Nếu nhà trườngmáy chiếu, có th chuẩn b
các slide để trình chiếu hoặc chạy th đoạn chương trình để c lớpng theo
i.
- Hình thc giảng dy: Kết hợp các hình thức giảng dạy thuyết trình, vấn
đáp và giải thích (nếu cn).
2. Phương tiện:
- Sách giáo khoa tin học lp 11.
- V ghi lý thuyết.
- Giáo án
- Sách tham khảo và các trang thiết b tin học như y tính, máy chiếu
(nếu).
III. Tiến trình lên lớp và nội dung bài hc
1. Ổn định lớp:(1 phút)
Yêu cu lớp trưởng n định lớp và báo cáo sĩ s.
2. Kiểm tra bài cũ: (5 phút)
- Nêu lại tiêu đề bài học cũ, dẫn dt sơ qua đ học sinh n định lại
nh li kiến thức của bài học trước : cấu trúc r nhánh
Hỏi :
1. Câu lệnh r nhanh nhất thiết phảibiu thức loại gì ? (biểu
thức logic)
2. S ging và khác nhau gia hai câu lệnh if-then.
3. Một câu lệnh r nhanh chứa m lệnh if dạng đủ và lồngo
nhau. u lệnh đó to ra bao nhiêu nhánh ? (m+1)
3.Gợi động cơ: (4 phút)
Thuyết trình:
Trong một s thut toán nhng thao tác phải lặp đi lp lại nhiều lần.
Nếu ta phải viết đi viết lại các thao tác đó thì rõ ràng không thuân tiện rất
mất thời gian và lại d dẫn ti nhàm chán.
Giáo án Tin Hc 11
Phương Thị Chang CNTT - ĐHSPHN 3
Ví d: Chương trình tính điểm cho một lớp học sinh thì ta phải lặp lại
nhiều lần mt s thao tác: Nhập h tên học sinh, nhập điểmcn, tính
tổng điểm cho từng môn hoặc trung bình chung.
Nếu lớp có 40 hs thì ta phải viết lại 40 ln, nếu lớp có 50 hs thì ta phải
viết lại 50 lần, như vậy mt trường có hàng ngàn hc sinh thì ta phải viết lại
các tháo tác đó đến hàng nghìn lần. Làm như vậy chương trình của chúng ta
s rt công kênh và rất mt thời gian. Vì thế ngôn ng lập trình đã đưa ra
cấu trúc lặp, ch cần viết các câu lnh thc hiện các thao tác trên mt ln,
sau đó s dụng câu lệnh lặp cho chương trình tự thực hiện lặp lạic thao
tác đó. Bài m nay chúng ta tìm hiểu v cấu trúc lặp.
4. Nội dung bài giảng:
S
th
tư
Nội dung Hoạt động của thy và trò Thời
gian
1 u lệnh lặp với số lần
biết trước và câu lnh
lặp với số lần chưa biết
trước:
Xét hai bài toán sau:
Với a là s nguyên và
a >= 2
i toán 1: Tính tng
và đưa kết quả ra màn
hình:
i toán 2: tính tổng và
đưa kết quả ra màn hình
tổng:
cho đến khi :
Để tìm hiu v cấu trúc lặp
đưa ra hai ví d tính tổng,
phân tích ví d và t đó đưa ra
các dạng ca cấu trúc lặp.
Hi:
Hc sinh có nhận xét gì v
hai ví d này ?
Thuyết trình:
Nhận thấy hai ví d này
tính tng S với giá tr gán ban
đầu là 1/a; tiếp theo cộng thêm
vào tổng S một giá tr 1/a+N
(N = 1, 2, 3, 4, 5...), việc cộng
này được lặp đi lặp lại mt s
lần.
VD1, s lần lặp là 100 và
việc cộng vào tổng s kết thúc
khi đã thực hiện việc cng 100
lần. Đây là lặp với s lần biết
trước.
VD2, s lần lặp chưa biết
trước nhưng cng vào tổng S
s kết thúc khi điều kiện
1/a+N < 0.0001 được tho
n. Đây là lặp với s lần
chưa biết trước nhưng có điu
kiện nào đó cho trước để dừng
lặp.
Hỏi:
10 phút
Giáo án Tin Hc 11
Phương Thị Chang CNTT - ĐHSPHN 4
Vậy theo các em có trường
hợp lặp không th dừng không
và trường hợp đó xy ra khi
nào?
Tr lời:
Quá trình lặp không th
dừng gi là quá trình lặp
hạn. Điều này xảy ra khi điều
kiện dng vòng lặp không còn
b biến đổi giá tr sau mỗi lần
lặp. Khi đó để thoát vòng lặp
hạn cn có câu lnh cho
phép thoát ra khỏi vòng lặp
như break, exit...
2 u lệnh lặp với s lần
biết trước và câu lnh
for-do:
Xem xét ví d 1, có hai
thuật toán như sau:
Thuật toán Tong_1a
Bước 1. S 1/a; N 0;
{khởi tạo s và N}
Bước 2. N N + 1;
Bước 3. Nếu N > 100 thì
chuyển đến B5;
Bước 4.
S S + 1/(1 + N)
rồi quay lại B2;
Bước 5. Đưa S ra màn
hình, ri kết thúc.
Thuật toán tong_1b:
Bước 1. S 1/a; N
101;
{khởi to S và N}
Bước 2. N N – 1;
Bước 3. Nếu N < 1 thì
chuyển đến B5;
Bước 4.
S S + 1/(a + N)
rồi quay lại B2;
Bước 5. Đưa S ra màn
Thuyết trình:
Tiết học này ta tìm hiểu v
câu lnh lặp với s lần cho
trước. Muốn vậy ta đi xây
dựng thuật toán cho bài toán 1
Yêu cầu:
Giáo viên viết thuật toán
tong_1a.
T thuật toán tong_1a, gợi ý
và yêu cầu học sinh viết thuật
toán tong_1b: thuật toán này
tính tng s qua 100 lần lặp vi
giá tr bắt đầu tham gia lặp
1.Vậy liệu ta có thy dng
thut toán lặp ngược lại
nghĩa là giá tr bt đầu tham
gia vòng lặp là 100 không ?
Nhận xét về thut toán :
C hai thuật toán trên đều
biết trước s lần lặp 100
lần.
Thuật toán tong _1a, giá tr
bắt đầu tham gia vòng lặp là 1
và sau mỗi lần lp giá tr của N
tăng lên 1 cho đến khi N > 100
(N=101) thì kết thúc lặp
15 phút
Giáo án Tin Hc 11
Phương Thị Chang CNTT - ĐHSPHN 5
hình ri kết thúc.
Dạng lặp tiến:
For <biến đếm>:=
<giá trị đầu > to
< giá trcuối > do
< câu lệnh >;
Dạng lặp lùi:
For < biến đếm >:=
<giá trị cuối > downto
< giá trị đầu > do
< câu lnh >;
.
Thuật toán tong_1b, giá tr
ban đầu của N là 100 và sau
mi lần lặp N giảm đi cho đến
khi N < 1 (N=0) thì kết thúc
lặp. Ta nói cách khác là lặp
trong thuật toán tong_1a là
dạng tiến, trong thuật toán
tong_1b dạngi
Như vậy dng lặp với s
lần biết trước được dùng đ
thc hiện câu lệnh mt s lần
c định. Dạngy ng biến
điều khiền để điều khin vòng
lặp. Trong NNLT Pascal mỗi
lần thc hin câu lnh thì biến
điu khiển được t động tăng
(dng tiến) hoặc gim (dạng
lùi). Đến khi biến điều khin
đạt giá tr xác định thì dng
ng lặp lặp với s ln biết
trước th hiện qua câu lệnh
for-do,có hai dạng:
- Dạng lặp tiến
- Dạng lp lùi
Ta có một số chú ý sau:
Biến đếm là biến đơn,
thường có kiểu nguyên.
- Giá tr đầu, giá tr cuối
các biu thc cùng kiểu với
biến đếm và g tr đầu phải
nh hơn và bng giá tr cuối
- Trong vòng lặp không
được cha lệnh làm thay đổi
giá tr của biến điều khiển, giá
tr của biến đếm s t động
được điều chỉnh
- Sau khi ra khỏi vòng for
giá tr của biến điều khiển
không xác định. Vì vậy không
th s dụng giá try vào câu
lệnh tiếp theo.
Hoạt động của lệnh for-do:
- dạng tiến, câu lnh viết
sau t khoá do được thc hiện