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.
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: