Giáo án dự giờ Tin học 8 Tiết 59: Bài thực hành 7 xử lí dãy số trong chương trình

Giáo án dự giờ Tin học 8 Tiết 59: Bài thực hành 7 xử lí dãy số trong chương trình

Tiết 59, Bài thực hành 7 XỬ LÍ DÃY SỐ TRONG

 CHƯƠNG TRÌNH

A. MỤC TIÊU

 Sau khi học xong bài này học sinh cần đạt được các mục tiêu sau:

 1. Kiến thức:

 - Hiểu và viết được chương trình với thuật toán tìm giá trị lớn nhất, nhỏ nhất của một dãy số, tính tổng dãy số.

 - Ôn luyện cách sử dụng câu lệnh if.then, for.do.

 2. Kỹ năng:

 - Thực hành khai báo và sử dụng các biến mảng.

 - Củng cố kĩ năng đọc, hiểu và chỉnh sửa chương trình.

 3. Thái độ:

 - Hình thành phương pháp làm việc khoa học.

 - Vận dụng vào trong học tập và thực tiễn.

 

doc 6 trang Người đăng vultt Lượt xem 1033Lượt tải 1 Download
Bạn đang xem tài liệu "Giáo án dự giờ Tin học 8 Tiết 59: Bài thực hành 7 xử lí dãy số trong chương trình", để 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: 13/03/2011
Ngày dạy: 17/03/2011
Lớp: 8
Giáo viên hướng dẫn: Lê Đình Trung
Giáo viên soạn : Cái Thị Hạ Ngân
Tiết 59, Bài thực hành 7 XỬ LÍ DÃY SỐ TRONG 
 CHƯƠNG TRÌNH 
A. MỤC TIÊU
 Sau khi học xong bài này học sinh cần đạt được các mục tiêu sau:
 1. Kiến thức:
 - Hiểu và viết được chương trình với thuật toán tìm giá trị lớn nhất, nhỏ nhất của một dãy số, tính tổng dãy số.
 - Ôn luyện cách sử dụng câu lệnh if..then, for..do.
 2. Kỹ năng: 
 - Thực hành khai báo và sử dụng các biến mảng.
 - Củng cố kĩ năng đọc, hiểu và chỉnh sửa chương trình.
 3. Thái độ: 
 - Hình thành phương pháp làm việc khoa học.
 - Vận dụng vào trong học tập và thực tiễn.
B.Chuẩn bị
 1. Giáo viên 
	- Bài giảng điện tử.
 - Giáo án.
	- Máy tính, Projector
 2. Học sinh
 - SGK, và dụng cụ học tập.
C. Phương pháp
	- Thuyết trình.
	- Vấn đáp.
	- Trực quan.
 - Hướng dẫn thực hành.
	- Phát hiện và giải quyết vấn đề.
D. Tiến trình lên lớp
 I. Ổn định tổ chức (1p)
	- Kiểm tra sĩ số( vắngphép,không phép).
	- Ổn định chổ ngồi học sinh.
 II. Kiểm tra bài cũ (5p)
	 Câu hỏi 1: Dữ liệu kiểu mảng là gì? Cách khai báo biến mảng trong Pascal?
 Câu hỏi 2: Trình bày cú pháp của câu lệnh lặp với số lần biết trước và câu lệnh điều kiện.
 Đáp án: 
 Câu hỏi 1: 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ự và mọi 
phần tử đều có cùng một kiểu dữ liệu.
 Cách khai báo biến mảng trong Pascal
 Tên mảng: ARRAY [..] OF 
 Câu hỏi 2: Trình bày cú pháp của câu lệnh lặp với số lần biết trước và câu lệnh điều kiện.
 Cú pháp của câu lệnh lặp với số lần biết trước.
 FOR := TO DO ;
 Câu lệnh điều kiện.
 + IF THEN ;
 + IF THEN ELSE ;
 III. Triển khai bài mới (2p)
HOẠT ĐỘNG CỦA THẦY VÀ TRÒ
NỘI DUNG BÀI MỚI
Hoạt động 1: Trình bày mục đích yêu cầu
(13p)
Tiết học hôm nay chúng ta phải thực hiện 
được các nội dung sau:
Làm quen với việc khai báo và sử dụng các 
biến mảng.
Ôn luyện cách sử dụng câu lệnh lặp FOR..DO.
Củng cố các kĩ năng đọc, hiểu và chỉnh sửa 
chương trình.
Thực hiện được các nội dung đó xem như 
chúng ta đã được mục đích yêu cầu của bài học.
Trình bày mục đích yêu cầu
Làm quen với việc khai báo 
và sử dụng các biến mảng.
Ôn luyện cách sử dụng câu 
lệnh lặp FOR..DO.
Củng cố các kĩ năng đọc, 
hiểu và chỉnh sửa chương trình.
Hoạt động 2: Thực hành - Bài tập 1 (30p)
Hoạt động 2.1: Xem lại các ví dụ 2, ví dụ 3, bài 9 về cách sử dụng và khai báo biến mảng trong Pascal.
GV: Cho HS xem lại ví dụ 2 và ví dụ 3 của bài 9 trong sgk trang 76.
HS: Theo dõi.
GV: Giảng.
Ở ví dụ 2:
* Sử dụng biến mảng Diem thay cho các biến 
Diem_1; Diem_2; Diem_3, để lưu điểm số của các HS.
 * Khai báo biến mảng Diem như sau:
VAR Diem: ARRAY [1..50] OF REAL; 
 * Mỗi HS có thể có nhiều điểm theo từng 
môn học như Toán,Văn, Lý,Ta có thể sử 
dụng biến mảng DiemToan, DiemVan, DiemLi thay cho các biến Diem_1; Diem_2; Diem_3, để lưu điểm số của các HS theo từng môn học. 
 Vì các biến mảng DiemToan, DiemVan, DiemLi có cùng chỉ số đầu, chỉ số cuối ,một kiểu dữ liệu nên ta có thể gộp ba mảng này lại với nhau và khai báo như sau:
VAR DiemToan, DiemVan, DiemLi: ARRAY [1..50] OF REAL; 
 Ở ví dụ 3:
* Sử dụng biến mảng A thay cho các biến A1; A2; A3, 
 * Khai báo biến mảng A như sau:
VAR A: ARRAY [1..100] OF INTEGER; 
Ở đây các phần tử của biến mảng A được giới hạn là 100. Nếu như tăng số phần tử càng lớn thì chỉ số cuối cùng của biến mảng càng lớn. Ví dụ như N=1000. 
HS: Theo dõi.
Hoạt động 2.2: Liệt kê các biến dự định sẽ dùng trong chương trình. Tìm hiểu phần khai báo và tìm hiểu tác dụng của từng biến.
GV: Gọi HS đọc đề bài ở sách giáo khoa.
 Yêu cầu HS còn lại chú ý lắng nghe.
 Ghi đề lên bảng.
HS: Đọc bài tập.
GV: Liệt kê các biến dự định sẽ dùng trong chương trình? 
HS: Trả lời.
GV: Giảng
 Tương tự ở ví dụ 3, ở bài tập này biến mảng A giới hạn số phần tử là 100. 
GV: Cho HS xem phần khai báo.
* PROGRAM PHANLOAI;
 VAR
 I,N: INTEGER;
 GIOI,KHA, TRUNGBINH, KEM: INTEGER;
 A: ARRAY[1..100] OF REAL;
HS: Theo dõi.
GV: Trong chương trình này các biến có tác dụng gì?
HS: Trả lời.
GV: Khái quát lại.
HS: Ghi bài.
Hoạt động 2.3: 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.
GV: Yêu cầu HS.
 Gõ phần khai báo trên vào máy tính và lưu tệp với tên Phanloai. 
HS: Thực hiện.
GV: Cho HS xem chương trình.
* BEGIN
 WRITE('NHAP SO CAC BAN TRONG LOP, N = ');
 READLN(N);
 WRITE('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 TRUNGBINH');
 WRITELN(KEM, 'BAN HOC KEM');
 READLN;
 END.
HS: Theo dõi.
GV: Ở chương trình này đã sử dụng những câu lệnh nào?
HS: Trả lời.
GV: Khái quát lại.
 Câu lệnh for..do.
 Câu lệnh gán.
 Câu lệnh if..then lồng nhau.
HS: Theo dõi.
Hoạt động 2.4: Gõ tiếp phần thân chương trình vào sau phần khai báo. Dịch, chạy chương trình.
GV: Yêu cầu HS.
 Gõ tiếp phần thân chương trình vào sau phần khai báo. 
HS: Thực hiện.
GV: Theo dõi bao quát để chỉnh sửa lỗi cho HS.
HS: Thực hiện sửa lỗi để hoàn thiện chương trình.
* Nếu HS nào làm xong thì cho lên bảng thực hiện.
Thực hành - Bài tập 1 
2.1. Xem lại các ví dụ 2, ví dụ 3, bài 9 về cách sử dụng và khai báo biến mảng trong Pascal.
2.2. Liệt kê các biến dự định sẽ dùng trong chương trình. Tìm hiểu phần khai báo và tìm hiểu tác dụng của từng biến.
Bài tập 1: 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 GIOI, KHA, TRUNGBINH, KEM. Tiêu chuẩn:
- Loại giỏi: 8.0 trở lên
- Loại khá: 6.5 đến 7.9
- Loại trungbình: 5.0 đến 6.4
- Loại kém: dưới 5.0
 + I, N, GIOI, KHA, TRUNGBINH, KEM.
 + Biến mảng A thay cho các biến 
A1; A2; A3, 
* PROGRAM PHANLOAI;
 VAR
 I,N: INTEGER;
 GIOI,KHA, TRUNGBINH, KEM: INTEGER;
 A: ARRAY[1..100] OF REAL;
Biến I: làm biến đếm cho các 
lệnh lặp. 
Biến N: để nhập điểm của các 
bạn trong lớp.
Biến: GIOI, KHA, 
TRUNGBINH, KEM: để lưu kết quả học tập.
2.3. 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.
* PROGRAM PHANLOAI;
 VAR
 I,N: INTEGER;
 GIOI,KHA, TRUNGBINH, KEM: INTEGER;
 A: ARRAY[1..100] OF REAL;
* BEGIN
 WRITE('NHAP SO CAC BAN TRONG LOP, N = ');
 READLN(N);
 WRITE('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 TRUNGBINH');
 WRITELN(KEM, 'BAN HOC KEM');
 READLN;
 END.
 * Câu lệnh for..do.
 Câu lệnh gán.
 Câu lệnh if..then lồng nhau.
2.4. Gõ tiếp phần thân chương trình vào sau phần khai báo. Dịch, chạy chương trình.
PROGRAM PHANLOAI;
 VAR
 I,N: INTEGER;
 GIOI,KHA, TRUNGBINH, KEM: INTEGER;
 A: ARRAY[1..100] OF REAL;
 BEGIN
 WRITE('NHAP SO CAC BAN TRONG LOP, N = ');
 READLN(N);
 WRITE('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 TRUNGBINH');
 WRITELN(KEM, 'BAN HOC KEM');
 READLN;
 END.
 IV. Củng cố (3p)
 Giáo viên nhận xét và đánh giá tiết thực hành.(Những gì làm được và chưa làm được)
 V. Dặn dò (1p)
+ Nắm cú pháp và ý nghĩa các câu lệnh.
+ Đọc, tìm hiểu ý nghĩa của các câu lệnh trong các bài tập tương tự.
+ Đọc trước phần còn lại của bài thực hành thực hiện tuần tự các yêu cầu.
E. RÚT KINH NGHIỆM
	Ngày  tháng 03 năm 2011
	 Duyệt GV hướng dẫn
	 Leâ Ñình Trung

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

  • docXLI DAY SO TRONG CTRINH.doc