b) Bổ sung các câu lệnh trên vào vị trí thích hợp trong chương trình. Thêm các lệnh cần thiết, dịch và chạy chương trình với các số liệu thử.. Kiến thức- Viết chương trình Pascal sử dụ[r]
(1)Ngày soạn: 10/04/2012 Ngày dạy: 18/04/2012 TIẾT 64 - BÀI THỰC HÀNH 7
XỬ LÝ DÃY SỐ TRONG CHƯƠNG TRÌNH (T1) I - MỤC TIÊU
1 Kiến thức
- Làm quen với việc khai báo sử dụng biến mảng 2 Kỹ Năng
- Ôn luyện cách sử dụng câu lệnh lặp for…do
- Củng cố kĩ đọc, hiểu chỉnh sửa chương trình 3 Thái độ: Nghiêm túc
II CHUẨN BỊ
1 Giáo viên: giáo án, máy chiếu Học sinh: Kiến thức cũ, sách, III - PHƯƠNG PHÁP
- Thuyết trình, giảng giải, vấn đáp IV - TIẾN TRÌNH LÊN LỚP
1 Tổ chức
Lớp 8A 8B 8C
Vắng 2 Kiểm tra cũ:
KIỂM TRA 15 Phút I Trắc nghiệm
Khoanh tròn chữ đứng trước phương án trả lời câu sau: Câu 1: Cho S i biến nguyên Khi chạy đoạn chương trình :
s:=1;for i:=1 to s := s+i writeln(s); Kết in lên hình s là:
A 55 B 10 C 15 D 11
Câu 2: Với ngơn ngữ lập trình Passcal câu lệnh lặp for i:=1 to 10 x:=x+1; thì biến đếm i phải khai báo kiểu liệu
A Integer; B Tất kiểu C String D Real; Câu 3: Trong câu lệnh lặp for i:=1 to 12 Write(‘A’); lệnh Write(‘A’) được thực lần?
A Không lần B lần C lần D 12 lần
Câu 4: Để tính tổng S=1 + +3 +4 … + n; em chọn đoạn lệnh: A for i:=1 to n doif ( i mod 2)<>0 then S:=S + i;
B for i:=1 to n if ( i mod 2)=0 then S:=S + i; C for i:=1 to n S:= S + i ;
D for i:=1 to n if ( i mod 2)=1 then S:=S + i;
(2)1.for i:=10 to writeln('b');
2 var x: integer; begin for x := to 10 writeln('b'); end for i:=1 to 100 ;
4 for i:=1 to 100 writeln('b'); 5.for i:=0.5 to 5.5 writeln('b'); 6.for i=1 to 100 writeln('b');
7 while…do câu lệnh lặp với số lần lặp biết trước pascal S:=0; n:=0;
while S <= 100
begin n:=n+1; S:=S+n end; II /Tự luận
Câu Hãy viết chương trình nhập vào chiều cao số bạn lớp em. ĐÁP ÁN VÀ THANG ĐIỂM
I Trắc nghiệm
Từ câu đến câu câu 0,5 điểm
1 D A D C
Câu 5: ý 0,5 điểm
Điền Đ (đúng) S (sai) với câu sau: S - 1.for i:=10 to writeln('b');
Đ- var x: integer; begin for x := to 10 writeln('b'); end Đ- for i:=1 to 100 ;
Đ- for i:=1 to 100 writeln('b'); S- 5.for i:=0.5 to 5.5 writeln('b'); S- 6.for i=1 to 100 writeln('b');
S- while…do câu lệnh lặp với số lần lặp biết trước pascal S- S:=0; n:=0;
while S <= 100
(3)II /Tự luận: Câu
1 var 0,25 đ
2. i,n:byte; 0,5đ
3. Chieucao: array[1 50] of real; đ
4 Begin 0,25 đ
5. Write(‘Hãy nhập vào số học sinh cần nhập chiều cao’); readln(n); 0,5 đ 6 For i:=1 to n readln(Chieucao[i]); đ
7. Readln; 0,25 đ
8 End. 0,25 đ
K T QU KI M TRAẾ Ả Ể
Lớp Sĩ số 0,1,2 3,4 5,6 7,8 9,10 Trên TB
8A 8B 8C
3 B i m i à ớ
HĐ CỦA GV VÀ HS NỘI DUNG
GV: Đưa tập SGK ? Gọi học sinh nêu ý tưởng - GV hướng dẫn
HS: Làm tập
Bài 1.Viết chương trình nhập điểm bạn lớp Sau in hình số bạn đạt kết học tập loại giỏi, khá, trung bình (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 5.0 xếp loại kém)
a) Xem lại ví dụ ví dụ 3, cách sử dụng khai báo biến mảng Pascal
b) Liệt kê biến dự định sử dụng chương trình Tìm hiểu phần khai báo tìm hiểu tác dụng biến:
program Phanloai; uses crt;
Var
(4)c) Gõ phần khai báo vào máy tính lưu tệp với tên Phanloai Tìm hiểu câu lệnh phần thân chương trình đây:
Begin clrscr;
write(‘Nhap so cac ban lop, n = ‘); readln(n); writeln(‘Nhap diem:’);
For i:=1 to n Begin write(i,’ ‘); readln(a[i]); End; Gioi:=0; Kha:=0; Trungbinh:=0; Kem:=0;
for i:=1 to n begin
if a[i]>=8.0 then Gioi:=Gioi+1; if a[i]<5 then Kem:=Kem+1; if (a[i]<8.0) and (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
d) Gõ tiếp phần chương trình vào máy tính sau phần khai báo Dịch, chạy chương trình
4 - CỦNG CỐ (3’)
- Cách sử dụng biến mảng
- Cách kết hợp với lệnh lặp for…do 5 - HƯỚNG DẪN VỀ NHÀ (2’)
- Về nhà xem lại học tiết sau thực hành tiếp RÚT KINH NGHIỆM
(5)Ngày soạn: 15/04/2012 Ngày dạy: 23/04/2012 TIẾT 65 - BÀI THỰC HÀNH 7
XỬ LÝ DÃY SỐ TRONG CHƯƠNG TRÌNH (T2) I - MỤC TIÊU
1 Kiến thức
- Làm quen với việc khai báo sử dụng biến mảng 2 Kỹ Năng
- Ôn luyện cách sử dụng câu lệnh lặp for…do
- Củng cố kĩ đọc, hiểu chỉnh sửa chương trình 3 Thái độ: Nghiêm túc
II CHUẨN BỊ
1 Giáo viên: giáo án, máy chiếu Học sinh: Kiến thức cũ, sách, III - PHƯƠNG PHÁP
- Thuyết trình, giảng giải, vấn đáp IV - TIẾN TRÌNH LÊN LỚP
1 Tổ chức
Lớp 8A 8B 8C
Vắng 2 Kiểm tra cũ:
(6)HĐ CỦA GV VÀ HS NỘI DUNG GV: Đưa tập SGK
? Gọi học sinh nêu ý tưởng - GV hướng dẫn
HS: Làm tập
- GV nhận xét, chữa
Bài 2 Bổ sung chỉnh sửa chương trình để nhập hai loại điểm Toán Ngữ văn bạn, sau in hình điểm trung bình bạn lớp (theo cơng thức điểm trung bình = (điểm Tốn + điểm Ngữ văn)/2), điểm trung bình lớp theo mơn Tốn Ngữ văn a) Tìm hiểu ý nghĩa câu lệnh sau đây: Phần khai báo:
Var
i, n: integer;
TbToan, TbVan: real;
DiemToan, DiemVan: array[1 100] of real; Phần thân chương trình:
begin
writeln('Diem trung binh:'); for i:=1 to n
writeln(i,' ',(DiemToan[i]+DiemVan[i])/2:3:1); TbToan:=0; TbVan:=0;
for i:=1 to n begin
(7)writeln('Diem trung binh mon Van: ',TbVan:3:2); end
b) Bổ sung câu lệnh vào vị trí thích hợp trong chương trình Thêm lệnh cần thiết, dịch chạy chương trình với số liệu thử 4 - CỦNG CỐ (3’)
- Cách sử dụng biến mảng
- Cách kết hợp với lệnh lặp for…do 5 - HƯỚNG DẪN VỀ NHÀ (2’)
- Về nhà làm lại thực hành
- Xem lại học kỳ chuẩn bị tiết sau làm tập RÚT KINH NGHIỆM
(8)Ngày soạn: 15/04/2012 Ngày dạy: 25/04/2012 TIẾT 66 - BÀI TẬP
I - MỤC TIÊU
1 Kiến thức- Viết chương trình Pascal sử dụng câu lệnh biến mảng. 2 Kỹ - Rèn luyện khả đọc chương trình, tìm hiểu tác dụng kết hợp câu lệnh
3 Thái độ: Nghiêm túc II CHUẨN BỊ
1 Giáo viên: giáo án, máy chiếu Học sinh: Kiến thức cũ, sách, III - PHƯƠNG PHÁP
- Thuyết trình, giảng giải, vấn đáp IV - TIẾN TRÌNH LÊN LỚP
1 Tổ chức
Lớp 8A 8B 8C
Vắng 2 Kiểm tra cũ:
Xen kẽ
3 B i m ià ớ
HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG
I GIẢI BÀI TẬP SGK BÀI /T79
GV: Đưa tập SGK trang 79 gọi học sinh lên bảng trả lời
1) Lợi ích việc sử dụng biến mảng rút gọn việc viết chương trình, sử dụng câu lệnh lặp để thay nhiều câu lệnh Ngoài cịn lưu trữ xử lí nhiều liệu có nội dung liên quan đến cách hiệu
2) Đáp án a) Sai Phải thay dấu phẩy
1) Hãy nêu lợi ích việc sử dụng biến mảng chương trình
(9)hai dấu chấm;
b) c) Sai, giá trị nhỏ lớn số mảng phải số nguyên;
d) Sai, giá trị đâu số mảng phải nhỏ số cuối;
e) Đúng 3) Đúng
4) Không Giá trị nhỏ lớn của số mảng phải xác định phần khai báo chương trình
5) Học sinh thực hành máy Chương trình sau: var N, i: integer;
A: array[1 100] of real; begin
write('Nhap so phan tu cua mang, n= '); readln(n);
for i:=1 to n do
write('Nhap gia tri ',i,'cua mang, a[',i,']= '); readln(a[i]);
end.
II MỘT SỐ BÀI TẬP THƯỜNG GẶP
trong Pascal hay sai?
a) var X: Array[10,13] Of Integer; b) var X: Array[5 10.5] Of Real; c) var X: Array[3.4 4.8] Of Integer; d) var X: Array[10 1] Of Integer; e) var X: Array[4 10] Of Real;
3) "Có thể xem biến mảng biến tạo từ nhiều biến có kiểu, tên nhất" Phát biểu hay sai?
4) Câu lệnh khai báo biến mảng sau máy tính có thực khơng? var N: integer;
A: array[1 N] of real;
(10)VỀ MẢNG
Bài tập 1: Viết chương trình nhập dãy số, in hình số nhỏ nhất, lớn nhất tính giá trị trung bình phần tử danh sách
GV: Cho tập yêu cầu học sinh viết chương trình giải tốn
HS: Viết chương trình
Giáo viên chữa bài, nhận xét HS: ý ghi
Bài 2: Viết chương trình nhập vào mảng số nguyên In hình dãy
Bài tập 1:
Chương trình Pascal sau: program ln_nn_tb;
var a:array[1 100] of integer; i,n,s,max,min:integer; begin
write('nhap n: ');readln(n); for i:=1 to n do
begin
write('nhap so thu ',i,':'); readln(a[i]);
end; s:=0;
max:=a[1]; min:=a[1]; for i:=1 to n do begin
if a[i]>max then max:=a[i]; if a[i]<max then min:=a[i]; s:=s+a[i];
end;
writeln('gia tri nho nhat la', min:4); writeln('gia tri lon nhat la', max:4); writeln('gia tri tb la',s/n:5:1);
(11)số vừa nhập in giá trị trung bình cộng của mảng đó.
GV: Cho tập yêu cầu học sinh viết chương trình giải tốn
HS: Viết chương trình
Giáo viên chữa bài, nhận xét HS: ý ghi
Bài 3: Viết chương trình nhập dãy số, in ra hình dãy số đó, xếp dãy số đó
Program TinhTBC; Uses crt;
Var
A: array[1 100] of integer N,I:integer;
TB: real; Begin
Clrscr;
Write(‘Nhap spt cua mang N ’); Readln(n);
Write(‘Nhap gtri cho cac ptu’); For i:=1 to n
Begin
Write(‘A[’,i,‘]=’); Readln(A[i]); End
Write(‘Mang vua nhap la: ’); For i:=1 to n
Write(A[i], ‘; ’);
Write(‘Tinh TBC cua mang: ’); TB:=0;
For i:=1 to n TB:=TB+A[i];
Writeln(‘TBC=:’ , TB); Readln
End. Bài tập 3
(12)theo thứ tự giảm dần.
GV: Cho tập yêu cầu học sinh viết chương trình giải tốn
HS: Viết chương trình
Giáo viên chữa bài, nhận xét HS: ý ghi
program ds;
var a:array[1 100] of integer; i,n,sau,vt,tg:integer; begin
write('nhap n: ');readln(n); for i:=1 to n begin
write('nhap so thu ',i,':'); readln(a[i]);
end;
write('day so chua sap xep: ');
for i:=1 to n write(a[i],' '); write('day so sap xep giam dan:'); for vt:=1 to n-1 do
for sau:=vt+1 to n do if a[vt]<a[sau] then
begin
tg:=a[vt]; a[vt]:=a[sau]; a[sau]:=tg; end;
for i:=1 to n write(a[i],' '); readln;
end. 4 - CỦNG CỐ (3’)
Giáo viên hệ thông lại kiến thức học 5 - HƯỚNG DẪN VỀ NHÀ (1’)
- Về nhà xem lại tập ôn tập để sau kiểm tra thực hành tiết RÚT KINH NGHIỆM
(13)Ngày soạn: /04/2012 Ngày dạy: /05/2012 Tiết 67 - BÀI KIỂM TRA TIẾT THỰC HÀNH
A MỤC TIÊU 1 Kiến thức
- Đánh giá kiến thức HS qua kiểm tra
- Vận dụng kiến thức học để làm kiểm tra 2 Kỹ năng: Bổ sung kiến thức lập trình pascal 3 Thái độ: Nghiêm túc làm bài
B CHUẨN BỊ
1 Giỏo viờ: Bài kiểm tra….
2 Học sinh: Kiến thức học, đồ dùng học tập
C MA TR N Ậ ĐỀ:
Mức độ Kiến thức
Nhận biết Thông Hiểu Vận dụng
Tổng
TN TL TN TL TN TL
Nhập liệu cho
mảng
Số ý 2
Điểm 4
In giá trị ptử
mảng
Số ý 1
Điểm 2
Thực tính tốn
với giá trị
mảng
Số ý 3
Điểm 4
Tổng ý 3
Điểm 10
D TIẾN TRÌNH LÊN LỚP
1 T ch cổ ứ
Lớp 8A 8B 8C
Vắng 2 Phát đề kiểm tra
(14)Bài 1: Viết chương trình nhập vào mảng số nguyên In hình dãy số vừa nhập in giá trị trung bình cộng mảng
Bài 2: Viết chương trình nhập vào dãy số in giá trị lớn nhỏ của dãy số
3 Nhận xét rút kinh nghiệm kiểm tra
4 Hướng dẫn nhà
- Làm lại kiểm tra
- Xem lại học để tiết sau ôn tập cuối năm ĐÁP ÁN VÀ THANG ĐIỂM Bài 1: (6 điểm)
Program TinhTBC; Uses crt;
Var
A: array[1 100] of integer N,I:integer;
TB: real; Begin
Clrscr;
Write(‘Nhap so phan tu cua mang N ’);
Readln(n); đ
Write(‘Nhap gia tri cho cac phan tu cua mang ’); For i:=1 to n
Begin
Write(‘A[’,i,‘]=’);
Readln(A[i]); 1 đ
End
Write(‘Mang vua nhap la: ’);
For i:=1 to n Write(A[i], ‘; ’); 2 đ
Write(‘Tinh TB cong cua mang: ’);
TB:=0; 0.5 đ
For i:=1 to n TB:=TB+A[i]; đ
Writeln(‘TB cua mang la:’ , TB); 0.5 đ
(15)Bài 2: (4 điểm) program Max_Min; uses crt;
var
a:array[1 100] of integer; i,n,max,min:integer; begin
Clrscr;
Write(‘Nhap so phan tu cua mang N ’);
Readln(n); đ
Write(‘Nhap gia tri cho cac phan tu cua mang ’); For i:=1 to n
Begin
Write(‘A[’,i,‘]=’);
Readln(A[i]); 1 đ
End max:=a[1];
min:=a[1]; for i:=1 to n do begin
if a[i]>max then max:=a[i]; 0.5 đ if a[i]<min then min:=a[i]; 0.5 đ end;
writeln('gia tri nho nhat la', min:4); 0.5 đ
writeln('gia tri lon nhat la', max:4); 0.5 đ
readln; end.
KẾT QUẢ KIỂM TRA
Lớp Sĩ số 0,1,2 3,4 5,6 7,8 9,10 Trên TB
(16)Ngày soạn: / /2012 Ngày dạy: /05/2012 Tiết 68 - ÔN TẬP
I.MỤC ĐÍCH, YÊU CẦU 1.Kiến thức
Biết câu lệnh lặp
Lặp với số lần chưa biết trước Làm việc với dãy số
2.Kĩ năng
Hiểu thuật toán tìm giá trị lớn nhất, giá trị nhỏ dãy số, tính tổng dãy số
3.Thái độ
HS có thái độ ham hiểu biết, học hỏi Biết tư toán II PHƯƠNG PHÁP
Giảng giải, vấn đáp, trực quan III CHUẨN BỊ
1 Giáo viên :
- SGK, SGV, tài liệu, Giáo án, máy chiếu - Đồ dùng dạy học
2 Học sinh :
- Ôn cũ theo sơ đồ hình IV TIẾN TRÌNH LÊN LỚP
1 Tổ chức
Lớp 8A 8B 8C
Vắng 2 Kiểm tra cũ:
(17)HOẠT ĐÔNG CỦA GIÁO VIÊN HOẠT ĐÔNG CỦA HỌC SINH Hoạt đơng 1: Ơn Tập
GV: Y/c học sinh vẽ sơ đồ hình cây của câu lệnh lặp, lặp với số lần chưa biết trước, làm việc với dãy số.
G: Đặt câu hỏi học sinh trả lời câu hỏi?
G: Lấy số ví dụ lặp với số lần biết trước?
G: Viết chương trình tính tổng bằng câu lệnh lặp.
G: Lấy ví dụ câu lệnh lặp chưa biết trước?
G: Thay phải khai báo nhiều biến kiểu, em dùng để khai báo ngắn gọn hơn?
Hs: Dùng dãy số.
G: Nêu thuật tốn tìm giá trị lớn nhất giá trị nhỏ nhất?
Câu lệnh lặp
Lặp với lần chưa biết trước
Câu lệnh lặp – lệnh thay cho nhiều lệnh
Tính tổng tích câu lệnh lặp
Ví dụ lệnh lặp với số lần chưa biết trước Các hoạt động lặp với số lần chưa biết trước
Lặp vô hạn lần – lỗi lập trình cần tránh
Tìm giá trị lớn nhỏ dãy số Ví dụ biến mảng Làm việc với dãy số
(18)4 Củng cố
Viết chương trình dùng câu lệnh lặp For
Viết chương trình sử dụng câu lệnh lặp với số lần chưa biết trước While
Viết chương trình làm việc với dãy số Array[1 100] of interger 5 Hướng dẫn nhà
Học chuẩn bị cho tiết“kiểm tra học kỳ II” RÚT KINH NGHIỆM
(19)Ngày soạn: /05/2012 Ngày dạy: /05/2012 Tiết 69 - ƠN TẬP
I.MỤC ĐÍCH, YÊU CẦU 1.Kiến thức
Biết câu lệnh lặp
Lặp với số lần chưa biết trước Làm việc với dãy số
2.Kĩ
Hiểu thuật tốn tìm giá trị lớn nhất, giá trị nhỏ dãy số, tính tổng dãy số
3.Thái độ
HS có thái độ ham hiểu biết, học hỏi Biết tư toán II PHƯƠNG PHÁP
Giảng giải, vấn đáp, trực quan III CHUẨN BỊ
1 Giáo viên :
- SGK, SGV, tài liệu, Giáo án, máy chiếu - Đồ dùng dạy học
2 Học sinh :
- Ôn cũ theo sơ đồ hình IV TIẾN TRÌNH LÊN LỚP
1 Tổ chức
Lớp 8A 8B 8C
Vắng 2 Kiểm tra cũ:
Xen kẽ
(20)HOẠT ĐÔNG CỦA GIÁO VIÊN HOẠT ĐƠNG CỦA HỌC SINH Hoạt đơng 1: Bài tập
Bài 1: Viết chương trình Pascal sử dụng biến mảng để nhập từ bàn phím phần tử một dãy số Độ dài dãy được nhập từ bàn phím Tính tổng của dãy số nhập vào.
Gv: Chiếu đề lên bảng. GV: Yêu cầu xác định toán
GV: Yêu cầu học sinh mơ tả thuật tốn để tính tổng dãy số
GV: Yêu cầu học sinh viết chương trình GV: Khai báo nào?
GV: Nhập độ dài dãy số? GV: Nhập dãy số?
GV: Tính tổng dãy số.
Hs: Xác định toán
Input: độ dài dãy số N, dãy số(được nhập từ bàn phím)
Output: tính tổng dãy số Hs: Mơ tả thuật tốn B1: Nhập độ dài n B2: Nhập dãy số B3: Sß0;
B4: SßS+a[i];
B5: In hình tổng dãy số Hs: Viết chương trình
Program tinhtong; Uses crt;
Var n,i,s: Integer;
a: array[1 100] of integer; Begin
Writeln(‘nhập độ dài dãy số:’); Readln(n);
For i: = to n do Begin
Writeln(‘a[‘,i,’]=’); Readln(a[i]);
End; S:=0;
For i:=0 to n do S:=s+a[i];
Writeln(‘Tổng dãy số là:’,S); Readln;
(21)Hoạt đông 2: Bài 2
Bài Viết chương trình nhập một dãy số tối đa 100 số , sau đó sắp xếp lại theo thứ tự tăng dần
Gv: Chiếu đề lên bảng.
GV: Yêu cầu học sinh viết chương trình
GV: Khai báo nào?
Program sxtang; Uses Crt;
Var
A : Array [1 100] Of Integer ; i , j , n , T : Integer ;
BEGIN Clrscr ;
Write(' Do dai cua day so N = ') ; Readln (N) ;
Writeln (' Nhap day so : ') ; For i := To N Do
Begin
Write('A[', i ,'] = ') ; Readln ( A[i] ) ; End ;
i := ;
While (i <= n-1) Do Begin
j := i+1;
While j<=n Begin
If A[j] < A[i] then Begin
T := A[j]; A[j ] := A[i]; A[i] := T ; End ;
j := j + 1; End ;
i := i + 1; End ;
Writeln(' Day sau sap xep : ') ; For i := To N Do Write(A[i] : 4,’;’) ; Readln ;
(22)Hoạt đông 3: Bài 3 Sử dụng biến mảng chiều để viết
chương trình sau
Bài 3: Viết chương trình nhập dãy số, in hình dãy số đó, xếp dãy số theo thứ tự giảm dần.
Gv: Chiếu đề lên bảng.
GV: Yêu cầu học sinh viết chương trình
program ds;
var a:array[1 100] of integer; i,n,sau,vt,tg:integer;
begin
write('nhap n: ');readln(n); for i:=1 to n do begin
write('nhap so thu ',i,':'); readln(a[i]);
end;
write('day so chua sap xep: '); for i:=1 to n do
write(a[i],' ');
write('day so sap xep giam dan:'); for vt:=1 to n-1 do
for sau:=vt+1 to n do if a[vt]<a[sau] then
begin
tg:=a[vt]; a[vt]:=a[sau]; a[sau]:=tg; end;
for i:=1 to n do write(a[i],' '); readln;
end Hoạt đông 4: Bài 4
(23)Gv: Chiếu đề lên bảng.
GV: Yêu cầu học sinh viết chương trình
Program sochiahet2va3; Uses crt;
Var i,n,dem:integer; X;real;
Begin
Clrscr;
Write(‘nhap so luong so’); readln(n); Dem:=0;
For i:=1 to n do Begin
Write(‘nhap so thu tu’,i);readln(x); If (x mod 2=0) and(x mod 3=0) then
Dem:=dem+1; End;
Writeln(‘so cac so chia het cho va la:’dem); Readln;
End.
Hoạt đông 5: Bài 5
Bài 5: Viết chương trình nhập dãy số, in số lẻ hình, tính tổng số lẻ có danh sách
Gv: Chiếu đề lên bảng.
GV: Yêu cầu học sinh viết chương trình
program tong_ds;
var a:array[1 100] of integer; i,n,s:integer;
begin
write('nhap n: ');readln(n); for i:=1 to n do
begin
write('nhap so thu ',i,':'); readln(a[i]);
end; for i:=1 to n do
if a[i] mod 2<>0 then write(a[i],' '); s:=0;
for i:=1 to n do
if a[i] mod 2<>0 then s:=s+a[i];
write('tong cac so le mang la',s:4); readln;
(24)Hoạt đông 6: Bài 6
Bài 6: Viết chương trình nhập dãy số, in số chẵn hình, tính tổng số chẵn có danh sách.
Gv: Chiếu đề lên bảng.
GV: Yêu cầu học sinh viết chương trình
program tong_ds;
var a:array[1 100] of integer; i,n,s:integer;
begin
write('nhap n: ');readln(n); for i:=1 to n do
begin
write('nhap so thu ',i,':'); readln(a[i]);
end; for i:=1 to n do
if a[i] mod 2=0 then write(a[i],' '); s:=0;
for i:=1 to n do
if a[i] mod 2=0 then s:=s+a[i];
write('tong cac so chan mang la',s:4); readln;
end.
4 Củng cố
Viết chương trình dùng câu lệnh lặp For
Viết chương trình sử dụng câu lệnh lặp với số lần chưa biết trước While
Viết chương trình làm việc với dãy số Array[1 100] of interger 5 Hướng dẫn nhà
Học chuẩn bị cho tiết“kiểm tra học kỳ II” RÚT KINH NGHIỆM
(25)Ngày soạn: / /2012 Ngày dạy: /05/2012 Tiết 70 - BÀI KIỂM TRA TIẾT THỰC HÀNH
A MỤC TIÊU 1 Kiến thức
- Đánh giá kiến thức HS qua kiểm tra
- Vận dụng kiến thức học để làm kiểm tra 2 Kỹ năng: Bổ sung kiến thức lập trình pascal 3 Thái độ: Nghiêm túc làm bài
B CHUẨN BỊ
1 Giỏo viờ: Bài kiểm tra….
2 Học sinh: Kiến thức học, đồ dùng học tập
C MA TR N Ậ ĐỀ:
Mức độ Kiến thức
Nhận biết Thông Hiểu Vận dụng
Tổng
TN TL TN TL TN TL
Câu lệnh điều kiện Số câu 1
Điểm 0.5 1.5
Câu lệnh lặp với số lần biết trước
Số câu 1
Điểm 0.5 0.5
Câu lệnh lặp với số lần chưa biết trước
Số câu 1
Điểm 0.5 0.5
Làm việc với dãy số Số câu
Điểm 5.5 6.6
Tổng Số câu 2 1
(26)D TIẾN TRÌNH LÊN LỚP
1 T ch cổ ứ
Lớp 8A 8B 8C
Vắng 2 Phát đề kiểm tra
ĐỀ BÀI PHẦN I: TRẮC NGHIỆM
- Khoanh tròn chữ đứng trước kết
Câu Các câu lệnh Pascal sau lệnh viết đúng? a if x:=7 then a=b;
b. if x>5; then a:=b; c if x>5 then; a:=b; d if x>5 then a:=b;
Câu 2: Cho S i biến nguyên Khi chạy đoạn chương trình : s:=0;
for i:=1 to s := s+2*i; writeln(s);
Kết in lên hình :
a s = 72 b s = 100 c s = 101 d s = 55 Câu 3: Với câu lệnh sau chương trình thực vòng lặp
S:=0; n:=0; while S<=10
begin n:=n+1; S:=S+n end;
(27)Câu 4: Các khai báo mảng sau khai báo đúng? a var X: Array[10,13] Of Integer;
b var X: Array[3.4 4.8] Of Integer; c var X: Array[10 1] Of Integer; d var X: Array[4 10] Of Real;
Câu Khai báo mảng a có 11 phần tử từ đến 15 số nguyên ta khai báo sau:
a a:Array [1 11] of integer; b a:Array [5 15] of integer; c a:Array [5 15] of integer; d a:Array [11] of integer; PHẦN II: TỰ LUẬN
Câu 6: Sau câu lệnh sau đây
a. if (15 mod 3)=0 then X:=X+2; b. if X>8 then X:=X+2;
giá trị biến X bao nhiêu, trước giá trị X 7? Câu 7: Viết cú pháp câu lệnh lặp với số lần biết trước.
Câu : Viết cú pháp câu lệnh lặp với số lần chưa biết trước.
Câu : Sử dụng biến mảng viết chương trình nhập vào N số ngun từ bàn phím Sau in hình giá trị lớn nhỏ dãy số
3 Nhận xét rút kinh nghiệm kiểm tra
4 Hướng dẫn nhà
(28)ĐÁP ÁN VÀ THANG ĐIỂM
PH N I: TR C NGHI MẦ Ắ Ệ
Câu 1 2 3 4 5
Đáp án D A B D C
PHẦN II: TỰ LUẬN
Câu 6: Sau câu lệnh sau đây
a) X:=9; 0,5 đ
b) X:=7; 0,5 đ
Câu 7: For (Biến đếm):=(giá trị đầu) to (giá trị cuối) (câu lệnh); 0,5 đ
Câu 8: While (điều kiện) (câu lệnh); 0,5 đ
Câu 9: (5.5 đ) program MaxMin; uses crt;
Var
i, n, s, Max, Min: integer; 0.5 đ
A: array[1 100] of integer; 0.5 đ
Begin clrscr;
write('Hay nhap dai cua day so, N = '); readln(n); 0.5 đ writeln('Nhap cac phan tu cua day so:');
For i:=1 to n do Begin
write('a[',i,']=');
readln(a[i]); 0.5 đ
End;
(29)
For i:=2 to n Begin
if Max<a[i] then Max:=a[i]; 0.5 đ
if Min>a[i] then Min:=a[i]; 0.5 đ
S:=S+a[i]; 0.5 đ
End;
writeln('So lon nhat la Max = ',Max); 0.5 đ
writeln('So nho nhat la Min = ',Min); 0.5 đ
writeln(‘ Tong cua day so la :’,s); 0.5 đ
Readln; End.
KẾT QUẢ KIỂM TRA
Lớp Sĩ số 0,1,2 3,4 5,6 7,8 9,10 Trên TB