Giáo án Tin học 8 - Tiết 37-70 - Năm học 2009-2010

Giáo án Tin học 8 - Tiết 37-70 - Năm học 2009-2010

1. Mục tiêu:

a. Kiến thức:

 - Biết nhu cầu cần có cấu trúc 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.

b. Kỹ năng:

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

c. Thái độ:

- Yêu thích môn học, nghiêm túc trong giờ học.

2. Chuẩn bị của giáo viên và học sinh:

a. Chuẩn bị của giáo viên:

- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.

b. Chuẩn bị của học sinh:

- Kiến thức cũ, sách, vở.

 

doc 86 trang Người đăng tranhiep1403 Lượt xem 1114Lượ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 - Tiết 37-70 - Năm học 2009-2010", để 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: 02/01/2010
 Ngày dạy: 8A: 05/01/2010
8B: 05/01/2010
Tiết 37:
 Bài 7: CÂU LỆNH LẶP
1. Mục tiêu:
a. Kiến thức:
 - Biết nhu cầu cần có cấu trúc 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.
b. Kỹ năng:
- Hiểu hoạt động của câu lệnh với số lần biết trước for...do trong Pascal.
c. Thái độ:
- Yêu thích môn học, nghiêm túc trong giờ học.
2. Chuẩn bị của giáo viên và học sinh:
a. Chuẩn bị của giáo viên: 
- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.
b. Chuẩn bị của học sinh:
- Kiến thức cũ, sách, vở.
3. Tiến trình bài dạy
a. Kiểm tra bài cũ: Không KT
b. Dạy nội dung bài mới:40’
HOẠT ĐỘNG CỦA THẦY VÀ TRÒ
NỘI DUNG KIẾN THỨC
GV: Nêu một số công việc thường ngày trong cuộc sống
Trong cuộc sống hằng ngày, nhiều hoạt động được thực hiện lặp đi lặp lại nhiều lần.
Có những hoạt động mà chúng ta thường thực hiện lặp lại với một số lần nhất định và biết trước, chẳng hạn đánh răng mỗi ngày hai lần, mỗi ngày tắm một lần,... Chúng ta còn lặp lại những công việc với số lần không thể xác định trước: học cho đến khi thuộc bài, nhặt từng cọng rau cho đến khi xong,...
GV: Giới thiệu câu lệnh lặp trong Pascal
GV: Cho ví dụ về vẽ hình vuông và giải thích ví dụ cho học sinh
GV: Cho ví dụ về tính tổng 100 số tự nhiên giải thích ví dụ cho học sinh
1. Các công việc phải thực hiện nhiều lần: 15’
HS: Chú ý lắng nghe
HS: Ghi chép
Khi viết chương trình máy tính cũng vậy. Để chỉ dẫn cho máy tính thực hiện đúng công việc, trong nhiều trường hợp ta cũng cần 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.
2. Câu lệnh lặp - một lệnh thay cho nhiều lệnh: 25’
Ví dụ 1. Giả sử ta cần vẽ ba hình vuông có cạnh 1 đơn vị như hình 33. Mỗi hình vuông là ảnh dịch chuyển của hình bên trái nó một khoảng cách 2 đơn vị. Do đó, ta chỉ cần lặp lại thao tác vẽ hình vuông ba lần. Việc vẽ hình có thể thực hiện được bằng thuật toán sau đây:
Bước 1. Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu).
Bước 2. Nếu số hình vuông đã vẽ được ít hơn 3, di chuyển bút vẽ về bên phải 2 đơn vị và trở lại bước 1; ngược lại, kết thúc thuật toán.
 Hình 33
Riêng với bài toán vẽ một hình vuông (h. 34), thao tác chính là vẽ bốn cạnh bằng nhau, hay lặp lại bốn lần thao tác vẽ một đoạn thẳng. Sau mỗi lần vẽ đoạn thẳng, thước kẻ được quay một góc 90o sang phải tại vị trí của bút vẽ. Thuật toán sau đây sẽ mô tả các bước để vẽ hình vuông:
Hình 34
Bước 1. k ¬ 0 (k là số đoạn thẳng đã vẽ được).
Bước 2. Vẽ đoạn thẳng 1 đơn vị độ dài và quay thước 90o sang phải.
Bước 3. k ¬ k +1. Nếu k ≤ 4 thì trở lại bước 2; ngược lại, kết thúc thuật toán.
Lưu ý rằng, biến k được sử dụng như là biến đếm để ghi lại số cạnh đã vẽ được.
Ví dụ 2. Giả sử cần tính tổng của 100 số tự nhiên đầu tiên, tức là tính:
S = 1 + 2 + 3 + ... + 100.
Hoạt động chính khi giải bài toán này là thực hiện phép cộng. Thuật toán trong ví dụ 3, bài 5 đã mô tả việc thực hiện lặp lại phép cộng 100 lần. 
HS: Ghi vở
Cách mô tả các hoạt động lặp trong thuật toán như trong 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ác câu lệnh lặp. 
c. Củng cố, luyện tập: 4’
- Nhắc lại các hoạt động lặp trong cuộc sống
d. Hướng dẫn học sinh tự học ở nhà: 1’
- Về nhà xem lại phần còn lại.
- Học bài cũ.
Ngày soạn: 05/01/2010
 Ngày dạy: 8A: 08/01/2010
8B: 09/01/2010
Tiết 38:
 Bài 7: CÂU LỆNH LẶP (T2)
1. Mục tiêu:
a. Kiến thức:
- Biết nhu cầu cần có cấu trúc 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.
b. Kỹ năng
- Viết đúng được lệnh for...do trong một số tình huống đơn giản.
- Hiểu lệnh ghép trong Pascal
c. Thái độ
- Tập trung cao độ, nghiêm túc trong giờ học.
2. Chuẩn bị của giáo viên và học sinh:
a. Chuẩn bị của giáo viên: 
- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.
b. Chuẩn bị của học sinh:
- Kiến thức cũ, sách, vở.
3. Tiến trình bài dạy:
a. Kiểm tra bài cũ: Đan xen trong tiết học
b. Dạy nội dung bài mới: 37’
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG
GV: Giới thiệu câu lệnh lặp trong Pascal
HS: Chú ý quan sát
GV: Nêu cú pháp của câu lệnh lặp
HS: chú ý và ghi vở
GV: Nêu một ví dụ về câu lệnh lặp
GV Nêu Ví dụ Để in một chữ "O" trên màn hình, ta có thể sử dụng lệnh:
HS: Đọc kỹ ví dụ
GV: Trình bày bằng các câu lệnh Pascal
GV: Cho ví dụ về tính tổng và tích câu lệnh lặp
VD: Ví dụ 5. Chương trình sau đây sẽ tính tổng của N số tự nhiên đầu tiên, với N là số tự nhiên được nhập vào từ bàn phím
HS: Quan sát ví dụ.
Ví dụ 6. Ta kí hiệu N! là tích N số tự nhiên đầu tiên. 
HS: Quan sát và tìm cách giải quyết bài 
GV: Hướng dẫn một số lệnh trong Pascal sẽ được sử dụng trong bài.
HS: Viết chương trình
GV: Nhận xét
3. Ví dụ về câu lệnh lặp: 15’
ngôn ngữ lập trình thường có nhiều dạng câu lệnh lặp. 
Câu lệnh lặp đơn giản nhất trong Pascal có dạng:
for := to do ;
Khi gặp câu lệnh lặp trên, câu lệnh được thực hiện bắt đầu với giá trị biến đếm bằng giá trị đầu. Sau đó giá trị biến đếm tăng dần một đơn vị từ giá trị đầu đến giá trị cuối và câu lệnh được thực hiện mỗi lần tăng biến đếm cho đến khi biến đếm vượt quá giá trị cuối thì kết thúc. Như vậy biến đếm phải được khai báo là kiểu nguyên và giá trị cuối phải không nhỏ hơn giá trị đầu.
Ví dụ 3. Chương trình sau sẽ 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);
end. 
Ví dụ 4. Để in một chữ "O" trên màn hình, ta có thể sử dụng lệnh:
writeln('O');
HS: Quan sát các câu lệnh trong chương trình.
Nếu muốn viết chương trình mô phỏng một quả trứng rơi từ trên cao xuống, ta có thể lặp lại lệnh trên nhiều lần (ví dụ, 20 lần) như trong chương trình sau:
Uses crt;
Var i: integer;
begin
Clrscr;
for i:=1 to 20 do 
begin writeln('O'); delay(100) end;
end.
Dịch và chạy chương trình này, ta sẽ thấy kết quả như ở hình 35 dưới đây:
Hình 35
4. Tính tổng và tích bằng câu lệnh lặp : 22’
Ví dụ 5. Chương trình sau đây sẽ tính tổng của N số tự nhiên đầu tiên, với N là số tự nhiên được nhập vào từ bàn phím (xem ví dụ 2).
program Tinh_tong;
var N,i: Integer;
 S: longint;
begin
write('Nhap so N = '); readln(N);
S:=0;
  for i := 1 to N do S:=S+i;
writeln('Tong cua ',N,' so tu nhien dau tien S = ',S);
end. 
Ví dụ 6. Ta kí hiệu N! là tích N số tự nhiên đầu tiên. 
N! = 1.2.3. ... N
Dưới đây là chương trình tính N! với N là số tự nhiên được nhập vào từ bàn phím. Chương trình sử dụng một câu lệnh lặp fordo:
program Tinh_Giai_thua;
var N,i: Integer;
 P: longint;
begin
 write('N = '); readln(N);
 P:=1;
  for i:=1 to N do P:=P*i;
writeln(N,'! = ',P);
end. 
Lưu ý. Vì N! là số rất lớn so với N, một lần nữa cần lưu ý khai báo biến chứa giá trị của nó đủ lớn.
c. Củng cố, luyện tập: 7’
- Nhắc lại một số ví dụ về câu lệnh lặp
- Viết lại dạng tổng quát của cấu trúc lặp?
d. Hướng dẫn học sinh tự học ở nhà: 1’
- Về nhà xem lại phần còn lại của bài, tiết sau làm các bài tập về câu lệnh lặp
Ngày soạn: 08/01/2010
 Ngày dạy: 8A: 12/01/2010
8B: 12/01/2010
Tiết 39:
BÀI TẬP 
1. Mục tiêu
a. Kiến thức:
- 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.
b. Kỹ năng
- Hiểu hoạt động của câu lệnh với số lần biết trước for...do trong Pascal.
c. Thái độ
- Yêu thích môn học, nghiêm túc trong giờ học.
2. Chuẩn bị của giáo viên và học sinh:
a. Chuẩn bị của giáo viên: 
- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.
b. Chuẩn bị của học sinh:
- Kiến thức cũ, sách, vở.
3. Tiến trình bài dạy:
a. Kiểm tra bài cũ: Đan xen trong tiết học
b. Dạy nội dung bài mới: 40’
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG
GV: Cho bài tập 1
? Hãy viết thuật toán để thực hiện bài toán trên?
HS: Viết thuật toán để giải quyết bài toán trên.
GV: Nêu một ví dụ về câu lệnh lặp
GV: Yêu cầu học sinh viết các thuật toán để thực hiện giải bài toán tính tổng dãy số
GV: Kiểm tra và nhận xét
GV: Yêu cầu học sinh viết các thuật toán để thực hiện giải bài toán tính tổng dãy số
GV: Kiểm tra và nhận xét
Bài tập 1: 15’
a) Có thể mô tả các bước của thuật toán để vẽ hình ... a) như sau:
Bước 1. Xác định điểm bắt đầu vẽ là X. 
Bước 2. Đặt i = 0 và đặt hướng = lên trên.
Bước 3. Vẽ nửa đường tròn theo hướng đã đặt. 
Bước 4. i = i + 1. 
Bước 5. Nếu i > 4, chuyển bước 6; ngược lại, đặt hướng = hướng + 1 và quay lại bước 3.
Bước 6. Kết thúc thuật toán. 
Lưu ý. Khi trình bày thuật toán lần đầu tiên cho học sinh không nên định nghĩa các phép toán với hướng mà nên liệt kê đủ bốn hướng trong thuật toán.
b) Thuật toán tương tự như trên. Thao tác chính cần lặp lại là vẽ hình vuông. Tại mỗi bước, giữ nguyên tâm hình vuông và thay đổi hướng vẽ một góc 30o.
Bài tập 2: 13’
Thuật toán tính tổng 
A = 
Bước 1. Gán A ¬ 0, i ¬ 1. 
Bước 2. A ¬ .
Bước 3. i ¬ i + 1. 
Bước 4. Nếu i £ n, quay lại bước 2. 
Bước 5. Ghi kết quả A và kết thúc thuật toán.
Bài tập 3:12’
Trừ d), tất cả các câu lệnh đều không hợp lệ: 
a) Giá trị đầu phải nhỏ hơn giá trị cuối; 
b) Các giá trị đầu và giá trị cuối phải là số nguyên; 
c) Thiếu dấu hai chấm khi gán giá trị đầu; 
d) Thừa dấu chấm phẩy thứ nhất, nếu như ta muốn lặp lại câu lệnh writeln('A') mười lần, ngược lại câu lệnh là hợp lệ; 
e) Biến x đã được khai báo như là biến có dữ liệu kiểu số thực và vì thế không thể dùng để xác định giá trị đầu và giá trị cuối trong câu lệnh lặp.
c. Củng cố, luyện tập: 4’
? Nhắc lại các thuật toán trong các bài tập trên?
d. Hướng dẫn học sinh tự học ở nhà: 1’
- Về nhà xem các bài tập còn lại, tiết sau làm tiếp các bài tập
Ngày soạn: 11/01/2010
 Ngày dạy: 8A: 15/01/2010
8B: 16/01/2010
Tiết 40:
BÀI TẬP (Tiếp)
1. Mục tiêu
a. Kiến thức:
- Biết nhu cầu cần có cấu trúc lặp trong ngôn ngữ lập trình.
b. Kỹ năng:
- Viết đúng được lệnh for...do trong một số tình huống đơn giản.
- Hiểu lệnh ghép trong Pascal
c. Thái độ:
- Nghiêm túc trong giờ học, yêu thích môn học.
2. Chuẩn bị của giáo viên và học sinh:
a. Chuẩn bị của giáo viên: 
- Giáo án, phòng máy, máy chiếu, phần mềm Pascal.
b. Chuẩn bị của học sinh:
- Kiến thức cũ, sách, vở.
3. Tiến trình bài dạy:
a. Kiểm tra bài cũ: Đan xen trong tiết học
b. Dạy nội dung bài mới: 39’
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG
GV: Cho bài tập yêu cầu học sinh viết thuật toán và các lệnh để giải quyết bài toán như sau:
HS: Viết thuật toán để giải quyết bài toán trên.
GV: Nêu một ví dụ về câu lệnh lặp
GV: Cho bài toán "Nhập n số tự nhiên và tìm số lớn nhất trong các số vừa nhập " yêu cầu học sinh viết thuật toán và các lệnh để giải quyết bài toán.
HS: Viết t ... 
Cñng cè l¹i toµn bé kiÕn thøc ®· ®­îc häc tõ bµi 5 ®Õn bµi 9 vµ phÇn mÒm häc tËp ë häc kú 2.
Thùc hiÖn lµm c¸c bµi tr¾c nghiÖm. VËn dông vµo ®Ó viÕt ®­îc nh÷ng ch­¬ng tr×nh ®¬n gi¶n
b) Kỹ Năng : Cã kü n¨ng thµnh th¹o thùc hiÖn m¸y tÝnh vµ viÕt ch­¬ng tr×nh trªn m¸y tÝnh.
 c) Thái độ: Nghiêm túc, cẩn thận.
2. Chuẩn bị của giáo viên và học sinh :
a) Giáo viên: taøi lieäu, giaùo aùn.
b) Học sinh: Xem tríc näi dung bµi häc, dông cô häc tËp.
3. Tiến trình bài dạy:
a) KiÓm tra bµi cò: 1’
KiÓm tra sù chuÈn bÞ cña häc sinh .
b) Dạy nội dung bµi míi: 40’
Ho¹t ®éng cña gi¸o viªn
Ho¹t ®éng cña häc sinh
Gi¸o viªn cho häc sinh «n l¹i lý thuyÕt
Theo s¸ch gi¸o khoa.
(Häc sinh vÒ nhµ tù «n)
Häc sinh thùc hiÖn theo yªu cÇu cña gi¸o viªn
¤n bµi tËp vËn dông:
Khoanh troøn chöõ caùi ñöùng tröôùc keát quaû ñuùng
Caâu 1: Phaùt bieåu naøo sau ñaây laø ñuùng ?
Caáu truùc laëp ñöôïc söû duïng ñeå chæ thò cho maùy tính thöïc hieän laëp laïi moät vaøi hoaït ñoäng naøo ñoù cho ñeán khi moät ñieàu kieän naøo ñoù ñöôïc thoaû maõn.
Chæ ngoân ngöõ laäp trình Pascal môùi coù caùc caâu leänh laëp ñeå theå hieän caáu truùc laëp.
Ngoân ngöõ Pascal theå hieän caáu truùc laëp vôùi soá laàn laëp cho tröôùc baèng caâu leänh whiledo
Ngoân ngöõ Pascal theå hieän caáu truùc laëp vôùi soá laàn laëp chöa bieát tröôùc baèng caâu leänh Fordo
Caâu 2: Leänh laëp naøo sau ñaây laø ñuùng?
For = to do ;
For := to do ;
For := to do ;
For : to do ;
Caâu 3: Caâu leänh pascal naøo sau ñaây laø hôïp leä?
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’);
Caâu 4: Voøng laëp while ..do laø voøng laëp:
A) Bieát tröôùc soá laàn laëp	B) Chöa bieát tröôùc soá laàn laëp
C.) Bieát tröôùc soá laàn laëp nhöng giôùi haïn laø =100 
Caâu 5: Caâu leänh laëp whiledo coù daïng ñuùng laø:
A) While do; ; 	B) While do;
C) While do ;	D) While do ;
Caâu 6: Cho S vaø i laø bieán nguyeân. Khi chaïy ñoaïn chöông trình :
 s:=0;
 for i:=1 to 5 do s := s+i;
 writeln(s);
 Keát quaû in leân maøn hình laø cuûa s laø : 
	A.11 	B. 55 	C. 101	D.15
Caâu 7: Trong chöông trình pascal sau ñaây:
 Var x : integer ;
Begin
X:= 3 ; 
	If (45 mod 3) =0 then x:= x +2;
	If x > 10 then x := x +10 ;
End.
X coù giaù trò laø maáy
	a) 3	b) 5	c) 15	d)10
Caâu 8: Trong chöông trình pascal sau ñaây:
 program hcn;
var a, b :integer;
	s,cv :real ;
begin
	a:= 10;
	b:= 5;
s:= a*b ;
	cv:= (a +b ) * 2 ;
writeln(‘dien tich hcn la:’ , s );
writeln( ‘chu vi hcn la : ‘ , cv ) ;
	readln;
end.
Bieán s vaø cv coù giaù trò laø maáy:
	a/ s = 10 ; cv = 5 ;	b/ s= 30 ; cv = 50 ; 
	c/ s = 50 ; cv = 40 ; 	d/ s = 50 ; cv = 30 ;
c) Củng cố, luyện tập: 3’
Gi¸o viªn hÖ thèng l¹i toµn bé néi dung bµi häc.
Yªu cÇu häc sinh nh¾c l¹i bµi
d) Hướng dẫn HS tự học ở nhà: 1’
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,
Ngµy so¹n :	
Ngµy d¹y : 	8A :	8B :	
TiÕt 69: «n tËp
1. Mục tiêu :
a) Kiến thức
Cñng cè l¹i toµn bé kiÕn thøc ®· ®­îc häc tõ bµi 5 ®Õn bµi 9 vµ phÇn mÒm häc tËp ë häc kú 2.
Thùc hiÖn lµm c¸c bµi tr¾c nghiÖm. VËn dông vµo ®Ó viÕt ®­îc nh÷ng ch­¬ng tr×nh ®¬n gi¶n
b) Kỹ Năng : Cã kü n¨ng thµnh th¹o thùc hiÖn m¸y tÝnh vµ viÕt ch­¬ng tr×nh trªn m¸y tÝnh.
c) Thái độ: Nghiêm túc, cẩn thận.
2. Chuẩn bị của giáo viên và học sinh :
a) Giáo viên:
- S¸ch gi¸o khoa, gi¸o ¸n, tµi liÖu tin häc cã liªn quan.
b) Học sinh: - §äc tµi liÖu ë nhµ tr­íc khi 
3. Tiến trình bài dạy:
a) KiÓm tra bµi cò: 1’
KiÓm tra sù chuÈn bÞ cña häc sinh .
b) Dạy nội dung bµi míi: 40’
Ho¹t ®éng cña gi¸o viªn
Ho¹t ®éng cña häc sinh
¤n bµi tËp cñng cè kiÕn thøc:
Caâu 9: Sau khi thöïc hieän ñoaïn chöông trình j:= 0; for i:= 1 to 3 do j:=j+2; thì giaù trò in ra maøn hình laø?
	a) 4	b) 6	c) 8	d)10
Caâu 10: Ñeå tính toång S=1+3 + 5 +  + n; em choïn ñoaïn leänh:
a) for i:=1 to n do
	if ( i mod 2)=0 then S:=S + 1/i;
for i:=1 to n do
if ( i mod 2) 0 then S:=S + i;
b) for i:=1 to n do
if ( i mod 2)=0 then S:=S + i 
	Else S:= S + I; 
for i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
Caâu 11: Ñeå tính toång S=1/2+1/4 + 1/6 +  +1/ n; em choïn ñoaïn leänh:
a) for i:=1 to n do
	if ( i mod 2)=0 then S:=S + 1/i;
c) for i:=1 to n do
if ( i mod 2) 0 then S:=S + i;
b) for i:=1 to n do
if ( i mod 2)=0 then S:=S – 1/i 
	Else S:= S + 1/i; 
d) for i:=1 to n do
if ( i mod 2)=0 then S:=S +1/ i
Else S:=S-1/i;
Caâu 12: Ñeå tính toång S=1+1/3 + 1/5 +  +1/ n; em choïn ñoaïn leänh:
a) for i:=1 to n do
	if ( i mod 2)=1 then S:=S + 1/i;
c) for i:=1 to n do
if ( i mod 2) =0 then S:=S + 1/i;
b) for i:=1 to n do
if ( i mod 2)=0 then S:=S + 1/i 
	Else S:= S + 1/; 
 d) for i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
Caâu 13: Ñeå ñeám coù bao nhieâu soá leû nhoû hôn hay baèng n ; em choïn ñoaïn leänh:
a) for i:=1 to n do
	if ( i mod 2)0 then S:=S + 1;
c) for i:=1 to n do
if ( i mod 2) =0 then S:=S + 1;
b) for i:=1 to n do
if ( i mod 2)=0 then S:=S + i ;
d) for i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
Caâu 14: Ñeå tính toång S=1+2+3+ 4+ 5 +  + n; em choïn ñoaïn leänh:
a) s:=0; i:=0;
 While i<=n do 
	S:=S + 1;
a) s:=0; i:=0;
 While i<=n do 
If (I mod 2)= 1 Then S:=S + i;
b) s:=0; i:=0;
 While i<=n do 
 begin	
S:=S + i;
I:=i+1;
	End;
d) s:=0; i:=0;
 While i<=n do 
 begin	
if (i mod2)=1 Then S:=S + i;
Else i:=i+1;
	End;
Caâu 15: Caâu leänh naøo sau ñaây laëp voâ haïn laàn
a) s:=5; i:=0;
 While i<=s do 
	s:=s + 1;
a) s:=5; i:=1;
 While i<=s do 
i:=i + 1;
b) s:=5; i:=1;
 While i> s do 
 i:=i + 1;
d) s:=0; i:=0;
 While i<=n do 
 begin	
if (i mod2)=1 Then S:=S + i;
Else i:=i+1;
	End;
Caâu 16: Choïn khai baùo hôp leä
a) Var a,b: array[1..n] of real;
c) Var a,b: array[1:n] of real;
b) Var a,b: array[1..100] of real;
d) Var a,b: array[1n] of real;
Caâu 27: Choïn khai baùo hôp leä
a) Const n=5;
	Var a,b: array[1..n] of real;
c) Var n: real;
	Var a,b: array[1:n] of real;
b) Var a,b: array[100..1] of real;
d) Var a,b: array[1..5..10] of real;
Caâu 17: Choïn khai baùo hôp leä
a) Const n=5;
	Var a,b: array[1..n] of integer;
c) Var n: real;
	Var a,b: array[1:n] of real;
b) Var a,b: array[100..1] of integer;
d) Var a,b: array[1..5..10] of integer;
Caâu 18: Laàn löôït thöïc hieän ñoaïn leänh: a[1]:=2; a[2]:=3; t:=a[1]+a[2]+1; 
 Giaù trò cuûa t laø
	a) t=1	b) t=3 	c) t=2	d) t=6
c) Củng cố, luyện tập: 3’
Gi¸o viªn hÖ thèng l¹i toµn bé néi dung bµi häc.
Yªu cÇu häc sinh nh¾c l¹i bµi
d) Hướng dẫn HS tự học ở nhà: 1’
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 vµ «n l¹i toµn bé kiÕn thøc ®Ó giê sau kiÓm tra häc kú 2
-----------------o0o-----------------
Ngµy so¹n :	
Ngµy d¹y : 	8A :	8B :	
TiÕt 70: kiÓm tra häc kú 2
1. Mục tiêu
a) Kiến thức
b) Kỹ Năng :
c) Thái độ:
*/ ChuÈn bÞ: 
GV - S¸ch gi¸o khoa, gi¸o ¸n, tµi liÖu tin häc cã liªn quan.
HS - §äc tµi liÖu ë nhµ tr­íc khi 
2. Đề kiểm tra:
Hä teân: 
Lôùp: 8
ÑEÀ KIEÅM TRA HOÏC KYØ 2 NAÊM HOÏC 2008 – 2009
 Moân: Tin hoïc 8 (Thôøi gian 45 phuùt)
A/ LYÙ THUYEÁT:
I/ Traéc nghieäm khaùch quan: 
	Khoanh troøn chöõ caùi ñöùng tröôùc keát quaû ñuùng .
Caâu 1: Leänh laëp naøo sau ñaây laø ñuùng?
For = to do ;
For := to do ;
For := to do ;
For : to do ;
Caâu 2: Voøng laëp while ..do laø voøng laëp:
A) Chöa bieát tröôùc soá laàn laëp B) Bieát tröôùc soá laàn laëp
C.) Bieát tröôùc soá laàn laëp nhöng giôùi haïn laø =100
Caâu 3: Caâu leänh laëp whiledo coù daïng ñuùng laø:
A) While do; ; 	 B) While do;
C) While do ;	 D) While do ;
Caâu 4: Cho S vaø i laø bieán nguyeân. Khi chaïy ñoaïn chöông trình :
 s:=0;
 for i:=1 to 5 do s := s+2;
 writeln(s);
 Keát quaû in leân maøn hình laø cuûa s laø : 
	A.11 	B. 55 	C. 12	D.13
Caâu 5: Laàn löôït thöïc hieän ñoaïn leänh: a[1]:=2; a[2]:=3; t:=a[1]+a[2]+1; 
 Giaù trò cuûa t laø
	 A) t=1	 B) t=2	C) t=3	 D) t=6
Caâu 6: Caâu leänh pascal naøo sau ñaây laø hôïp leä?
For i:= 1 to 10 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:=100 to 1 do writeln(‘A’);
II/ Töï luaän:
	Vieát chöông trình Pascal söû duïng bieán maûng ñeå nhaäp töø baøn phím caùc phaàn töû cuûa moät daõy soá. Ñoä daøi cuûa daõy cuõng ñöôïc nhaäp töø baøn phím.
BAØI LAØM:
Hä teân: 
Lôùp: 8 
ÑEÀ KIEÅM TRA HOÏC KYØ 2 NAÊM HOÏC 2008 – 2009
Moân: Tin hoïc 8 (Thôøi gian 45 phuùt)
B/ THÖÏC HAØNH:
	Viết chương trình nhập điểm của các bạn trong lớp. Sau đó in ra màn hình số bạn đạt kết quả học tập loại giỏi, khá, trung bình và kém (theo tiêu chuẩn từ 8.0 trở lên đạt loại giỏi, từ 6.5 đến 7.9 đạt loại khá, từ 5.0 đến 6.4 đạt trung bình và dưới 5.0 xếp loại kém).
 a) Liệt kê các biến dự định sẽ sử dụng trong chương trình. Tìm hiểu phần khai báo dưới đây và tìm hiểu tác dụng của từng biến:
program Phanloai;
uses crt;
Var
 i, n, Gioi, Kha, Trungbinh, Kem: integer;
 A: array[1..100] of real;
Gõ phần khai báo trên vào máy tính và lưu tệp với tên Phanloai. Tìm hiểu các câu lệnh trong phần thân chương trình dưới đây:
Begin
clrscr;
write(‘Nhap so cac ban trong lop, n = ‘); readln(n);
writeln(‘Nhap diem:’);
For i:=1 to n do Begin write(i,’. ‘); readln(a[i]); End;
Gioi:=0; Kha:=0; Trungbinh:=0; Kem:=0;
for i:=1 to n do
 begin 
if a[i]>=8.0 then Gioi:=Gioi+1;
if a[i]<5 then Kem:=Kem+1;
if (a[i]=6.5) then Kha:=Kha+1;
if (a[i]>=5) and (a[i]<6.5) then Trungbinh:=trungbinh+1
 end;
writeln(‘Ket qua hoc tap:’);
writeln(Gioi,’ ban hoc gioi’);
writeln(Kha,’ ban hoc kha’);
writeln(Trungbinh,’ ban hoc trung binh’);
writeln(Kem,’ ban hoc kem’);
readln
End.
Gõ tiếp phần chương trình này vào máy tính sau phần khai báo. Dịch, chạy chương trình.
Đáp án - biểu điểm :
A/ LYÙ THUYEÁT (10 ÑIEÅM)
I/ Traéc nghieäm khaùch quan: (3 ñieåm)
	Moãi caâu ñuùng cho 0,5 ñieåm
Caâu
1
2
3
4
5
6
Ñaùp aùn
B
A
D
C
D
A
II/ Töï luaän: (7 ñieåm)
Program nhap_so_phan_tu_cu_mang;	
Uses Crt;
var N, i: integer;
 A: array[1..100] of real;
2.0
Begin
Clrscr;
write('Nhap so phan tu cua mang, n= ',n);
2.0
for i:=1 to n do
write('Nhap gia tri ',i,'cua mang, a[',i,']= ');
2.0
 Readln;
end.
1.0
B/ THÖÏC HAØNH
Laøm duùng cho 10 ñieåm
 CAÙCH TÍNH ÑIEÅM CUÛA BAØI
Laøm troøn ñeán phaàn möôøi
Tính theo coâng thöùc sau: ÑTB cuûa baø = (Ñieåm LT x 2 + Ñieåm TH) : 3
Nhận xét đánh giá sau khi chấm bài kiểm tra :

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

  • docTin 8 T3770 CV 961.doc