Giáo án Tin học 8 - Học kỳ II - Năm học 2009-2010 - Đặng Thị Hằng

Giáo án Tin học 8 - Học kỳ II - Năm học 2009-2010 - Đặng Thị Hằng

I/ MỤC TIÊU:

1. Kiến thức:

 - Biết nhu cầu cần có câu lệnh lặp trong ngôn ngữ lập trình.

 - Biết ngôn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc nào đó một số lần.

 - Hiểu hoạt động của câu lệnh lặp với số lần biết trước for .do trong pascal.

2. Kỹ năng:

 - Viết đúng được lệnh for .do trong một số tình huống đơn giản.

3.Thái độ:

- Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.

II/ CHUẨN BỊ

1. Giáo viên: bảng phụ.

2. Học sinh: Tìm hiểu kiến thức

III. PHƯƠNG PHÁP:

Vấn đáp, luyện tập và thực hành, phương pháp nhóm, luyện tập và giải quyết vấn đề

 

doc 52 trang Người đăng tranhiep1403 Lượt xem 1074Lượt tải 0 Download
Bạn đang xem 20 trang mẫu của tài liệu "Giáo án Tin học 8 - Học kỳ II - Năm học 2009-2010 - Đặng Thị Hằng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Ngày soạn: 01/01/2010	 	Tiết 37
Ngày giảng:	05/01/2010 (8B,C);	07/01/2010 (8D)
 08/01/2010 (8A)	 
BÀI 7: CÂU LỆNH LẶP
I/ MỤC TIÊU:
1. Kiến thức: 
	- Biết nhu cầu cần có câu lệnh lặp trong ngôn ngữ lập trình.
	- Biết ngôn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc nào đó một số lần.
	- Hiểu hoạt động của câu lệnh lặp với số lần biết trước for ..do trong pascal.
2. Kỹ năng:
 - Viết đúng được lệnh for ..do trong một số tình huống đơn giản.
3.Thái độ: 
- Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.
II/ CHUẨN BỊ
1. Giáo viên: bảng phụ.
2. Học sinh: Tìm hiểu kiến thức
III. PHƯƠNG PHÁP:
Vấn đáp, luyện tập và thực hành, phương pháp nhóm, luyện tập và giải quyết vấn đề
IV. TIẾN TRÌNH LÊN LỚP:
1. Ổn định tổ chức lớp : (1ph)
Lớp
Sĩ số
Tên học sinh vắng
8A
8B
8C
8D
2. Kiểm tra bài cũ. không kiểm tra
3. Bài mới:
ĐVĐ: (1ph) Để máy tính thực hiện tính tổng của 100 số tự nhiên đầu tiên thì chúng ta phải ra lệnh cho máy bằng lệnh nào? Để trả lời cho câu hỏi trên chúng ta đi vào nghiên cứu bài học ngày hôm nay. 
HOẠT ĐỘNG CỦA GV VÀ HS
GHI BẢNG
Ho¹t ®éng 1: C¸c c«ng viÖc ph¶i thùc hiÖn nhiÒu lÇn (7ph)
?Hµng ngµy chóng ta th­êng ph¶i lµm mét sè viÖc lÆp ®i lÆp l¹i mét sè lÇn, em h·y lÊy vÝ dô vÒ mét sè viÖc hµng ngµy em ph¶i lµm
- HS: mét em lÊy mét sè vÝ dô
- GV: Ghi vÝ dô cña häc sinh lªn b¶ng
 - HS: mét em kh¸c lÊy thªm mét sè vÝ dô
? Qua nh÷ng vÝ dô c¸c b¹n võa lÊy ra trªn b¶ng th× nh÷ng c«ng viÖc nµo chóng ta ®· biÕt tr­íc sè lÇn lÆp ®i lÆp l¹i vµ c«ng viÖc nµo chóng ta ch­a biÕt sè lÇn lÆp l¹i cña nã?
- HS: T¸ch vÝ dô thµnh hai lo¹i (mét lo¹i ®· biÕt tr­íc sè lÇn lÆp vµ mét lo¹i ch­a biªt sè lÇn lÆp )
- GV: NhËn xÐt vµ chèt l¹i.
1. C¸c c«ng viÖc ph¶i thùc hiÒn nhiÒu lÇn
- C«ng viÖc kh«ng biÕt tr­íc sè lÇn lÆp l¹i: häc bµi cho ®Õn khi thuéc hÕt c¸c bµi,...
- C«ng viÖc ®· biÕt tr­íc sè lÇn lÆp: ®i häc mçi s¸ng 5 tiÕt, mçi ngµy tËp 7 bµi thÓ dôc buæi s¸ng, ®¸nh r¨ng mçi ngµy 3 lÇn,...
=> §Ó chØ cho m¸y tÝnh thùc hiÖn ®óng c«ng viÖc, trong nhiÒu tr­êng hîp khi viÕt mét ch­¬ng tr×nh m¸y tÝnh chóng ta còng ph¶i viÕt lÆp l¹i nhiÒu c©u lÖnh thùc hiÖn mét phÐp tÝnh nhÊt ®Þnh.
VD1: §Ó tÝnh 5 sè tù nhiªn ®Çu tiªn ta cã thÓ viÕt nh­ sau:
begin
I=0; Tong:=0;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
Readln; 
end.
Ho¹t ®éng 2: C©u lÖnh lÆp - mét lÖnh thay cho nhiÒu lÖnh (15ph)
-HS: nghiªn cøu vÝ dô 1 SGK - 56,57.
- GV: ph©n tÝch vÝ dô 1.
- HS: Nghe, nghi chÐp
- HS: M« t¶ l¹i thuËt to¸n, ph©n tÝch thuËt to¸n.
? Qua hai vÝ dô trªn, c¸c em h·y chØ ra nh÷ng c«ng viÖc ®­îc lÆp ®i lÆp l¹i?
-HS: ChØ ra c«ng viÖc lÆp l¹i ë vd1 vµ vd2
- GV: KÕt luËn.
2. C©u lÖnh lÆp - mét lÖnh thay cho nhiÒu lÖnh
VD1: VÏ 3 h×nh vu«ng gièng nhau.
- thuËt to¸n (SGK T56,57)
VD2: TÝnh tæng cña 100 sè tù nhiªn ®Çu tiªn.
- thuËt to¸n: (®· nghiªn cøu)
=> KÕt luËn: - C¸ch m« t¶ c¸c ho¹t ®éng lÆp trong thuËt to¸n nh­ trong 2 vÝ dô trªn ®­îc gäi lµ cÊu tróc lÆp.
- Mäi ng«n ng÷ lËp tr×nh ®Òu cã “c¸ch” ®Ó chØ thÞ cho m¸y tÝnh thùc hiÖn cÊu tróc lÆp víi mét c©u lÖnh. §ã lµ c©u lÖnh lÆp.
Ho¹t ®éng 3: VÝ dô vÒ c©u lÖnh lÆp (15ph)
- GV: Tr×nh bµy cÊu tróc vßng lÆp For...to...do...
- HS: Ghi cÊu tróc vßng lÆp vµo vë.
GV: Gi¶i thÝch tõng thµnh phÇn trong cÊu tróc lÖnh.
-HS: Nghe, ghi chÐp.
GV: vËn dông c©u lÖnh viÕt vßng lÆp cho vÝ dô 1 phÇn 1
Var i, tong: integer;
Begin
Tong:=0;
For i: = 1 to 5 do
Tong:= tong + i;
Write(‘tong=’,tong);
Readln;
End.
3. VÝ dô vÒ c©u lÖnh lÆp
- Trong pascal c©u lÖnh lÆp cã d¹ng:
+C©u lÖnh lÆp d¹ng tiÕn:
For := to do ;
Trong ®ã: for, to, do lµ c¸c tõ kho¸, BiÕn ®Õm lµ biÕn ®¬n cã kiÓu nguyªn (cã thÓ lµ kiÓu kÝ tù hoÆc kiÓu ®o¹n con)
Gi¸ trÞ ®Çu, gi¸ trÞ cuèi lµ sè cô thÓ hoÆc lµ biÓu thøc cã kiÓu cïng kiÓu víi biÕn ®Õm, gi¸ trÞ cuèi ph¶i lín h¬n gi¸ trÞ ®Çu.
C©u lÖnh cã thÓ lµ c©u lÖnh ®¬n hoÆc c©u lÖnh kÐp.
- C©u lÖnh sÏ ®­îc thùc hiÖn nhiÒu lÇn, mçi lÇn thùc hiÖn c©u lÖnh lµ mét lÇn lÆp vµ sau mçi lÇn lÆp biÕn ®Õm sÏ tù ®éng t¨ng lªn 1 ®¬n vÞ, t¨ng cho ®Õn khi gi¸ trÞ cña biÕn ®Õm lín h¬n gi¸ trÞ cuèi th× vßng lÆp ®­îc dõng l¹i.
4. Cñng cè (2ph) 
- Gi¸o viªn hÖ thèng l¹i toµn bé néi dung bµi häc
	5. H­íng dÉn häc ë nhµ (4ph)
- Häc bµi theo s¸ch gi¸o khoa vµ vë ghi, ¤n l¹i c¸c kiÕn thøc chÝnh ®· häc vµ luyÖn viÕt, lµm ®i lµm l¹i nhiÒu lÇn.
- Häc kÜ lÝ thuyÕt, viÕt ch­¬ng tr×nh tÝnh t«ng 100 sè tù nhiªn, N sè tù nhiªn ®Çu tiªn.
- Lµm c¸c bµi tËp cßn l¹i,
- T×m hiÓu vÝ dô 5, 6.
V - RÚT KINH NGHIỆM
Ngày soạn: 02/01/2010	Tiết 38 	
Ngày giảng: 	07/01/2010 (8BC);
 09/01/2010 (8AD)	 
BÀI 7: CÂU LỆNH LẶP
I/ MỤC TIÊU:
1. Kiến thức:
- Hiểu cấu trúc câu lệnh ghép.
2. Kỹ năng: 
- Biết kết hợp câu lệnh ghép và câu lệnh lặp for .... do vào giải quyết một số bài toán.
3. Thái độ 
- Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.
II/ CHUẨN BỊ: 
1. Giáo viên
Phòng máy tính
2. Học sinh
 	Tìm hiểu kiến thức
III. PHƯƠNG PHÁP:
Vấn đáp, luyện tập và thực hành, phương pháp nhóm, luyện tập và giải quyết vấn đề
IV. TIẾN TRÌNH LÊN LỚP:
1. Ổn định tổ chức lớp : (1ph)
Lớp
Sĩ số
Tên học sinh vắng
8A
8B
8C
8D
2. Kiểm tra bài cũ: (5ph)
a, Câu hỏi:
? Trình bày cấu trúc của câu lệnh lặp trong pascal, nêu ý nghĩa của các thành phần trong cấu trúc? Mô tả hoạt động của câu lệnh lặp?
b, Biểu điểm:
- Nêu được cấu trúc câu lệnh lặp	(4 đ)
- Nêu được ý nghĩa các thành phần	(3 đ)
- Mô tả được hoạt động của câu lệnh lặp	(3 đ)
3. Bài mới:
HOẠT ĐỘNG CỦA GV VÀ HS
GHI BẢNG
Ho¹t ®éng 1: VÝ dô vÒ c©u lÖnh lÆp. (15ph)
-GV: Tr×nh bµy cÊu tróc cña c©u lÖnh lÆp lïi trong pascal
For ...downto...do...
HS: Ghi chÐp cÊu tróc vµo vë
GV: Gi¶i thÝch ho¹t ®éng cña c©u lÖnh.
- HS: §äc vµ t×m hiÓu ch­¬ng tr×nh
- HS: mét em ®øng t¹i chç ph©n tÝch ho¹t ®éng cña vÝ dô.
- HS: C¸c em kh¸c th¶o luËn vµ cho ý kiÕn.
- GV: cho ch¹y ch­¬ng tr×nh mÉu ®· gâ tr­íc trong m¸y, yªu cÇu häc sinh quan s¸t kÕt qu¶.
- GV: Gi¶i thÝch kÕt qu¶ cña ch­¬ng tr×nh
- HS: §äc vµ t×m hiÓu ch­¬ng tr×nh
- HS: mét em ®øng t¹i chç ph©n tÝch ho¹t ®éng cña vÝ dô.
- HS: C¸c em kh¸c th¶o luËn vµ cho ý kiÕn.
- GV: Tr×nh bµy cÊu tróc c©u lÖnh ghÐp
- HS: Nghe, ghi chÐp.
- GV: cho ch¹y ch­¬ng tr×nh mÉu ®· gâ tr­íc trong m¸y, yªu cÇu häc sinh quan s¸t kÕt qu¶.
- GV: Gi¶i thÝch kÕt qu¶ cña ch­¬ng tr×nh
3. VÝ dô vÒ c©u lÖnh lÆp (tiÕp)
- CÊu tróc cña c©u lÖnh lÆp lïi:
For := downto do ;
- C©u lÖnh sÏ ®­îc thùc hiÖn nhiÒu lÇn, mçi lÇn thùc hiÖn c©u lÖnh lµ mét lÇn lÆp vµ sau mçi lÇn lÆp biÕn ®Õm sÏ tù ®éng gi¶m ®i1 ®¬n vÞ, gi¶m cho ®Õn khi gi¸ trÞ cña biÕn ®Õm nhá h¬n gi¸ trÞ ®Çu th× vßng lÆp ®­îc dõng l¹i.
-sè lÇn lÆp = gi¸ trÞ cuèi-gi¸ trÞ ®Çu+1
=> for ...do lµ cÊu tróc lÆp víi sè lÇn lÆp biÕt tr­íc.
- VÝ dô 3 (SGK-58) in ra mµn h×nh thø tù lÇn lÆp.
Program lap;
Var i: integer;
Begin
For i:=1 to 10 do
Writeln(‘day la lan lap thu’, i);
Readln;
End.
- VD4 (SGK-58) ViÕt ch­¬ng tr×nh ®­a ra mµn h×nh nh÷ng ch÷ “0” theo h×nh trøng r¬i.
Program trung_roi;
Uses crt;
Var i: integer;
Begin
Clrscr;
For i:=1 to 10 do
begin
Writeln(‘0’); delay(100); 
end;
Readln;
End.
- TËp hîp c¸c c©u lÖnh con ®­îc ®Æt trong cÆp tõ kho¸ begin end; ®­îc gäi lµ c©u lÖnh ghÐp. 
Ho¹t ®éng 2: TÝnh tæng vµ tÝch b»ng c©u lÖnh lÆp (16ph)
- GV: §­a ®Ò bµi lªn b¶ng
- HS: 1 em lªn b¶ng lµm vd5, 1 em lªn lµm vd6.(m« t¶ thuËt to¸n) 
ë d­íi líp c¸c em lµm bµi theo nhãm, mçi d·y lµm mét bµi, d·y gi÷a lµm vd5
- HS: §¹i diÖn cña mçi d·y nhËn xÐt thuËt to¸n trªn b¶ng.
-GV: Gióp HS söa l¹i ®óng thuËt to¸n
-HS: 2 em lªn b¶ng viÕt ch­¬ng tr×nh cho 2 bµi. 
- HS: ë d­íi ho¹t ®éng theo nhãm, chia d·y nh­ ban ®Çu.
- HS: ®¹i diÖn mçi d·y nhËn xÐt bµi viÕt trªn b¶ng.
GV: Gióp häc sinh söa ch­¬ng tr×nh cho ®óng vµ ch¹y ch­¬ng tr×nh trªn m¸y.
- HS: Quan s¸t kÕt qu¶.
4. TÝnh tæng vµ tÝch b»ng c©u lÖnh lÆp
VÝ dô 5. TÝnh tæng cña N sè tù nhiªn ®Çu tiªn.
(Ch­¬ng tr×nh SGK)
VÝ dô 6. TÝnh giai thõa cña N sè tù nhiªn ®Çu tiªn.
(Ch­¬ng tr×nh SGK)
4. Cñng cè: (4ph)
Gi¸o viªn hÖ thèng l¹i toµn bé néi dung bµi häc.
HS ®äc ghi nhí SGK, gi¸o viªn tæng kÕt ®¸nh gi¸ buæi häc.
5. H­íng dÉn vÒ nhµ: (4ph)
Häc bµi theo s¸ch gi¸o khoa vµ vë ghi, «n l¹i c¸c kiÕn thøc chÝnh ®· häc vµ luyÖn viÕt, lµm ®i lµm l¹i nhiÒu lÇn.
Häc kÜ lÝ thuyÕt, viÕt ch­¬ng tr×nh tÝnh tæng 100 sè tù nhiªn, N sè tù nhiªn ®Çu tiªn.
VÒ nhµ lµm bµi tËp trang 60-61, chuÈn bÞ tèt ®Ó tiÕt sau lµm bµi tËp
	V - RÚT KINH NGHIỆM
Ngày soạn: 08/12/2010	Tiết 39 	 
Ngày giảng:	12/01/2010 (8BC); 14/01/2010 (8D)
 16/01/2010 (8A)
BÀI TẬP
I/ MỤC TIÊU:
1. Kiến thức 
- Củng cố kiến thức vòng lặp với số lần biết trước và câu lệnh ghép
2. Kỹ năng: 
- Vận dụng vòng lặp for ...to...do và câu lệnh ghép viết một số bài toán đơn giản.
3. Thái độ - Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.
II/ CHUẨN BỊ: 
1. Giáo viên: Bảng phụ
2. Học sinh: Ôn tập kiến thức 
III. PHƯƠNG PHÁP:
Vấn đáp, luyện tập và thực hành, phương pháp nhóm, luyện tập và giải quyết vấn đề
IV. TIẾN TRÌNH LÊN LỚP:
1. Ổn định tổ chức lớp : (1ph)
Lớp
Sĩ số
Tên học sinh vắng
8A
8B
8C
8D
2. Kiểm tra bài cũ. (7ph)
a, Câu hỏi:
? Sử dụng vòng lặp for ... do viết chương trình tính tổng của 10 số tự nhiên đầu tiên?
b, Biểu điểm:
- Viết đúng phần khai báo	(3đ)
- Sử dụng đúng câu lệnh lặp (4đ)
- Hiểu hoạt động của câu lệnh lặp	(3đ)
3. Bài mới:(30ph)
HOẠT ĐỘNG CỦA GV VÀ HS
GHI BẢNG
GV: Đưa ra đề bài toán, yêu cầu học sinh nghiên cứu theo nhóm.
-HS: Hoạt động theo nhóm tìm câu trả lời.
- HS: Đại diện của hai nhóm trình bày kết quả của nhóm.
-GV: Nhận xét kết quả cuối cùng.
- GV: Đưa bài tập 2 lên bảng, yêu cầu một học sinh đứng tại chỗ trả lời.
- HS: Một học sinh đứng tại chỗ trả lời bài tập 2. một học sinh khác đứng tại chỗ nhận xét.
- GV: Kết luận kết quả của bài 2.
-GV: GV: Đưa ra đề bài toán, yêu cầu học sinh nghiên cứu theo nhóm.
-HS: Hoạt động theo nhóm tìm câu trả lời.
- HS: Đại diện của hai nhóm trình bày kết quả của nhóm.
- GV: Nhận xét.
- GV: đưa bài tập thêm :
Viết chương trình Pascal nhập n số nguyên từ bàn phím và ghi ra màn hình số lớn nhất trong các số đó. Số n cũng được nhập vào từ bàn phím. 
- HS nêu thuật toán và viết chương trình
- GV sửa chữa hoàn chỉnh bài cho HS
Bài 1: SGK (T60)
- Hàng ngày em đặt đồng hồ báo thức lúc 6 giờ để dậy sớm tập thể dục.
- Mỗi lần được khởi động, máy tính của em sẽ thực hiện cùng các hoạt động tự kiểm tra các thành phần máy tính, sau đó khởi động hệ điều hành theo một trình tự đã được quy định trước. 
Bài 2: SGK (T60)
- Câu lệnh lặp có tác dụng chỉ dẫn cho máy tính thực hiện lặp lại một câu lệnh hay một nhóm câu lệnh với một số lần n ... êm túc làm bài
B.CHUẨN BỊ
1. Giáo viên:
 	Bài kiểm tra.
2. Học sinh
Đồ dùng học tập.
C.TIẾN TRÌNH TIẾT DẠY
Ổn định tổ chức
Phát đề thi
Ma trận đề
 Nội dung
Mức độ
Bài 7. Câu lệnh lăp For do
Bài 8: Lặp với số lần chưa biết trước
While do
Tổng
(điểm)
Biết
I1, I5, I8, I9, I10
 1.25
I6, I11,II1
 2.5
3,75
Hiểu
I2, I3, I4, II2
 2,75
I7, I12
 0.5
3,25
Vận dụng
II3	
 3
3
I. Trắc nghiệm (3 điểm)
Câu 1: chạy chương trình trong pascal ta dùng tổ hợp phím :
a/ Ctrl + F7	 	b/ Ctrl + F8 	c/ Ctrl + F9 	d/ Ctrl + F10
Câu 2: Cho S và i là nguyên. Khi chạy đoạn chương trình :
s:=0;
for i:=1 to 10 do s := s+i;
writeln(s);
Kết quả in lên màn hình là : 
a/ s = 11 	b/ s = 55 	c/ s = 101 	d/ s = 10
Câu 3: Cho S và i là nguyên. Khi chạy đoạn chương trình :
s:=0;
for i:=1 to 8 do s := s+2*i;
writeln(s);
Kết quả in lên màn hình là : 
a/ s = 72 	b/ s = 100 	c/ s = 101 	d/ s = 55
Cậu 4:Các câu lệnh Pascal nào sau hợp lệ :
a/ for i:=100 to 1 do writeln(‘A’)	b/ for i:= 1.5 to 10.5 do writeln(‘A’)
c/ for i:= 1 to 10 do writeln(‘A’)	d/ for i:=1 to 10 do writeln(‘A’);
Câu 5: Cấu trúc của vòng lặp FOR – DO là :
a/ For := to do ;	
b/ For := to do ;
c/ For := downto do ;	
d/ For := downto do ;
Câu 6: trúc của vòng lặp WHILE - DO có dạng:
a/ While do ;	b/ While do ;
c/ While do ;	d/ While do ;
Câu 7: Trong Pascal kết quả của phép toán : (7 Mod 2) bằng:
a/ 4 	b/ 2	c/ 3 	d/ 1
Câu 8: Khi viết câu lệnh lặp dạng Fordo.
a/ Giá trị đầu lớn hơn giá trị cuối	c/ Giá trị cuối lớn hơn giá trị đầu
c/ Giá trị đầu bằng giá trị cuối	d/ Tất cả đều sai
Câu 9: Dữ liệu kiểu Longint là:
a/ Kiểu số nguyên nhận các giá trị từ o đên 225
b/ Kiểu số thực
c/ Kiểu số nguyên nhận các giá trị từ -231 đến 231-1
d/ Tất cả đều sai
Câu 10 Câu lệnh lặp dạng for do biến đếm có kiểu
a/ Kiểu số thực	b/ Kiểu số nguyên
c/ Kiểu ký tự	d/ Tất cả đều sai
Câu 11: Vòng lặp while ..do là vòng lặp:
a/ Biết trước số lần lặp	b/ Chưa biết trước số lần lặp
c/ Biết trước số lần lặp nhưng giới hạn là <=100	d/ Biết trước số lần lặp nhưng giới
Câu 12: Cho đoạn chương trình sau:
P:=0;
i:=1;
while <=n do
 begin
 p:=p*i
 i:=i+1;
 end;
Sau khi thực hiện đoạn chương trình trên với n=4, giá trị của p là 
a/ 0	b/ 12	c/ 24	d/ Vòng lặp vô tận
II. Tự luận (7 điểm)
Câu 1: Khi nào xảy ra “lặp vô hạn” viết một đoạn chương trình (2 điểm)
Câu 2: Sau khi thực hiện xong đoạn chương trình sau, thì chương trình thực hiện bao nhiêu vòng lặp với giá trị của biến bằng bao nhiêu (2 điểm)
	M:=0;
	For i:=1 to 5 do M:=M+2;
Câu 3: Viết chương trình tính tổng S=1+1/2+1/3+...+1/n.(3điểm)
(Lưu ý: Sử dụng lệnh lặp Whiledo)
Bài làm
Đáp án
I. Trắc nghiệm (3 điểm)
Câu 1
Câu 2
Câu 3
Câu 4
Câu 5
Câu 6
c
b
a
d
a
b
Câu 7
Câu 8
Câu 9
Câu 10
Câu 11
Câu 12
d
c
c
b
b
a
II. Tự luận (7điểm)
Câu 1 (2điểm)
Để xảy ra trường hợp “lặp vô hạn” thì điều kiện luôn luôn đúng và không xảy ra điều kiện sai.
Đoạn chương trình
Var a: integer;
Begin
	a:=5;
 while a<6 do writeln(‘a’);
end.
Câu 2: Với đoạn chương trình đó thì máy tính thực hiện 5 vòng lặp, mỗi lần M tăng thêm 2 đơn vị, kết thúc vòng lặp M có 10 giá trị.
Câu 3: Program Tinh_tong;
	 Uses crt
	 Var I,S: real;
	N: integer;
	 Begin
	Write(‘nhap n=’); Readln(n);
	S:=0;
	I:=1;
	While I<=N do
	Begin
	 S:=S+1/I;
	 I:=I+1;
	End;
	Writeln(‘Tong la’,S:6:2);
	Readln
	End.
TiÕt	20	Ngµy so¹n : 18/10/09
Tuần	10	Ngày dạy : 20/10/09
Bài 9: LÀM VIỆC VỚI DÃY SỐ
MỤC TIÊU:
Kiến thức
Biết được khái niệm mảng
Hiểu thuật toán tìm số lớn nhất và nhỏ nhất của dãy số
Kỹ năng
Biết cách khai báo mảng, nhập in, truy cập các phần tử của mảng
Viết được đoạn chương trình có sử dụng biến mảng ở bài toán đơn giản
CHUẨN BỊ
Giáo viên:
SGK, giáo án, máy tính.
Học sinh
SGK, đồ dùng học tập
TIẾN TRÌNH TIẾT DẠY
Ổn định lớp
Kiểm tra bài cũ
- Nêu sự khác biệt giữa câu lệnh lặp với số lần lặp cho trước và số lần lặp chưa xác định
- Viết cú pháp hai dạng câu lệnh lặp trong ngôn ngữ Passcal
 3. Bài mới:
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG CẦN ĐẠT
HOẠT ĐỘNG 1: DÃY SỐ VÀ BIẾN MẢNG
GV: Em thường nhìn thấy việc xếp hàng để mua vé, xếp hành trước khi vào lớp
Ta thấy việc sắp xếp công việc có lợi ích gì?
HS: Làm cho hoạt động diễn ra một cách trật tự và nhanh chóng.
GV: Trong lập trình cũng vậy nếu biết bố trí dữ liệu theo dãy, việc khai báo và xữ lý dữ liệu trở nên đơn giản rất nhiều. Thay vì phải viết rất nhiều câu lệnh giống nhau. Ta có thể dùng vài câu lệnh lặp và nhường lại phần lớn công việc cho máy tính thực hiện.
GV: Cho HS đọc ví dị 1 trong SGK
HS: Đọc và lắng nghe và tìm hiểu câu lệnh khai báo theo hoạt động nhóm để trả lời câu hỏi.
GV: Nếu làm theo cách viết chương trình ở ví dụ 1, em thấy việc khai báo thế nào?
HS: Mất thời gian và dễ nhầm lẫn
GV: Cho HS nghiên cứu hình 40 (sgk) việc thực hiện bằng cách gán cho mỗi phần tử một chỉ số
GV: Khi khái báo một biến có kiểu dữ liệu là kiểu mảng, biến đó được gọi là gì?
HS: Trả lời
1. Dãy và biến mảng
- Để giúp cho việc sắp xếp được thuận tiên và đơn giản, mọi ngôn ngữ lập trình đều có một kiểu dữ liệu được gọi là kiểu mảng
- Dữ liệu kiểu mảng là một tập hợp hữu hạn các phần tử có thứ tự, mọi phần tử đều có cùng một dữ liệu gọi là kiểu của phần tử.
- Khi khai báo một biến có kiểu dữ liệu là kiểu mảng, biến đó được gọi là biến mảng.
- Giá trị của biến mảng là một mảng, tức là một dãy số có thứ thự, mỗi số là giá trị của biến thành phần tương ứng.
HOẠT ĐỘNG 2: VÍ DỤ VỀ BIẾN MẢNG
GV: Biến mảng có tác dụng gì?
HS: Nghiên cứu SGK và trả lời
GV: Bổ sung
GV: Nghiên cưu SGK em hãy cho biết khai báo mảng phải được thực hiện ở đâu
HS: Suy nghĩ và trả lời
GV: Bổ sung
GV: Khi khai báo biến mảng cần chỉ rõ ít nhất những yếu tố nào?
HS: Nghiên cứu SGK và trả lời
GV: Đưa ra ví dụ cách khai báo trong SGK
GV: Ở câu lệnh thứ nhất ta khai báo biến có tên là gì? Gồm bao nhiêu phần tử? Kiểu dữ liệu mỗi phần tử của biến là gì?
HS: Hoạt động theo nhóm và trả lời câu hỏi
GV: Bổ sung
GV: Đưa ra tổng quát câu lệnh khai báo mảng
2. Ví dụ về biến mảng
- Khi khai báo biến mảng cần chỉ rõ: tên biến mảng, số lượng, kiểu dữ liệu của phần tử.
- Ví dụ
Var Chieucao: array[1..50] of real;
Var tuoi: array[21..80] of integer;
- Cách khai báo mảng
Tên mảng: array[...] of ;
Trong đó: 
- Chỉ số đầu, chỉ số cuối là các số nguyên hoặc biểu thức nguyên.
- Kiểu dữ liệu có thể là integer hoặc real
HOẠT ĐỘNG 3: CỦNG CỐ VÀ DẶN DÒ
* Củng cố
- Nhắc lại lý thuyết đã học
- Gợi ý ví dụ 2
* Dặn dò
- Đọc phần lý thuyết còn lại
TiÕt	21	Ngµy so¹n : 25/10/09
Tuần	10	Ngày dạy : 27/10/09
Bài 9: LÀM VIỆC VỚI DÃY SỐ
(Tiếp theo)
A.MỤC TIÊU:
Kiến thức
Biết được khái niệm mảng
Hiểu thuật toán tìm số lớn nhất và nhỏ nhất của dãy số
Kỹ năng
Biết cách khai báo mảng, nhập in, truy cập các phần tử của mảng
Viết được đoạn chương trình có sử dụng biến mảng ở bài toán đơn giản
CHUẨN BỊ
Giáo viên:
SGK, giáo án, máy tính.
Học sinh
SGK, đồ dùng học tập
C.TIẾN TRÌNH TIẾT DẠY
Ổn định lớp
Kiểm tra bài cũ
Hãy nêu cách khai báo mảng 
 3. Bài mới:
HOẠT ĐỘNG CỦA GV VÀ HS
KIẾN THỨC CẦN ĐẠT
HOẠT ĐỘNG 1: VÍ DỤ VỀ BIẾN MẢNG(TIẾP THEO)
GV: Nhắc lại kiến thức đã học trong bài trước.
HS: Lắng nghe
GV: Cho HS giải thích ý nghĩa của cách khái bảo mảng. Với khai báo mảng giúp cho người lập trình những gì?
HS: Suy nghĩ và trả lời
GV: Cho HS đọc nội dung của ví dụ 2 và yêu cầu HS khai báo biến mảng điểm.
HS: Suy nghĩ và trả lời
GV: Cách khai báo và sử dụng biến mảng như trên có lợi ích gì?
HS: Nghiên cứu SGK và trả lời
GV: Cho HS Phân tích ý nghĩa của câu lệnh khai báo trên.
HS: Phân tích
GV: Để nhập các điểm ta phải viết như thế nào? 
HS: Lên bảng viết.
GV: Cho một HS giải thích câu lênh
GV: Bổ sung
GV: Để so sánh điểm với một giá trị nào đó thì ta phải viết như thế nao?
HS: Lên bảng viết
GV: Cho HS nêu ý nghĩa của câu lệnh trên
GV: Bổ sung
GV: Nhấn mạnh cách ghi các phần tử trong biến mảng như thế nào cho HS hiểu
HS: Lắng nghe
GV: Mỗi học sinh đều có nhiều loại điểm khác nhau. Để xử lý nhiều loại điểm thì ta phải làm thế nào:
HS: Suy nghĩ và trả lời
GV: Bổ sung
GV: Yêu cầu HS nêu cách khai báo biến mảng có tên Diemly, Diemtoan.
HS: Lên bảng khai báo.
GV: Bổ sung
2. Ví dụ về biến mảng
Ví dụ 2: 
- Cách khai báo biến mảng điểm như sau:
Var Diem: array[1..50] of real;
- Câu lệnh lặp để nhập dữ liệu
For i:=1 to 50 do readln(Diem[i]);
For i:=1 to 50 do
If Diem[i]>8.5 then writeln(‘Giỏi’);
- Var Diemly:array[1..50] of real;
- Var Diemtoan:array[1..50] of real;
Hoặc ta có thể khai báo
Var Diemly,Diemtoan:array[1..50] of real
- Sau khi khai báo một mảng, ta có thể là việc các phần tử của nó như một biến thông thường như gán giá trị, đọc giá trị và thực hiện tính toán với các giá trị đó.
Ví dụ:
A[1]:=1; hoặc Diem[i]:=8;
Hoặc for i:=1 to 50 do readln(a[i]);
HOẠT ĐỘNG 2: VÍ DỤ TÌM GIÁ TRỊ LỚN NHẤT VÀ NHỎ NHẤT
GV: Cho HS nghiên cứu thuật toán của ví dụ 6 bài 5 và giải thích thuật toán.
HS: Trình bày thuật toán
GV: Cho HS nghiên cứu chương trình của bài toán và trả lời một số câu hỏi
GV: Chương trình đã khai báo những biến gì? Nêu tác dụng của từng biến? Các biến nên khái báo kiểu dữ liệu như thế nào? Mảng A có bao nhiêu phần tử và thuộc kiểu dữ liệu nào? Giải thích từng câu lệnh trong chương trình
HS: Hoạt động theo nhóm và cử một nhóm trả lời các nhóm khác bổ sung
GV: Nhận xét và bổ sung
GV: Cho HS viết chương trình vào vở và gọi một HS viết chương trình trên máy, chạy chương trình cho cả lớp quan sát.
HS: Thực hiện yêu cầu của GV
3. Ví dụ tìm giá trị lớn nhất và nhỏ nhất của dãy số
Chương trình (SGK)
 - Lưu ý: Các phần tử của mảng(kích thước của mảng) cần được khai báo bằng một số cụ thể.
HOẠT ĐỘNG 3: CỦNG CỐ VÀ DẶN DÒ
* Củng cố
- Trả lời câu hỏi 1,3,4
* Dặn dò
- Đọc và tìm hiểu một số chương trình trong Pascal.
- Làm các câu hỏi và bài tập
- Đọc trước bài thực hành
Tiết	22	Ngày soạn : 25/10/09
Tuần	10	Ngày dạy : 27/10/09
Bài thực hành 7: XỬ LÝ DÃY SỐ TRONG CHƯƠNG TRÌNH
MỤC TIÊU:
Kiến thức
Thực hành khai báo và sử dụng biến mảng
Ôn luyện cách sử dụng câu lệnh lặp ifthen, for do.
Hiểu và viết được chương trình với thuật toán tìm giá trị lớn nhất và nhỏ nhất của một dãy số, tính tổng dãy số.
Kĩ năng
- Củng cố kĩ năng đọc, hiểu và chỉnh sửa chương trình.
 3. Thái độ:
	- Nghiêm túc thực hành
B. CHUẨN BỊ
 1. Giáo viên:
	- Chuẩn bị phòng máy tốt, giáo án, SGK..
 2. Học sinh:
	- SGK, đồ dùng dạy học
C. TIẾN TRÌNH TIẾT DẠY
 1. Ổn định lớp
 2. Kiểm tra bài cũ.
 Trong quá trình thực hành
Bài mới
HOẠT ĐỘNG CỦA GV VÀ HS
KIẾN THỨC CẦN ĐẠT
HOẠT ĐỘNG 1: ÔN LẠI LÝ THUYẾT
GV:Hãy nêu cú pháp câu lệnh điều kiện
GV: Hãy viết cú pháp khai báo mảng.
HS: Lên bảng viết

Tài liệu đính kèm:

  • docTin 8 ky II.doc