I. Mơc tiªu
1. Kiến thức:
- Nâng cao kĩ năng sử dụng một số cu lệnh v một số kiểu dữ liệu thong qua việc tìm hiểu, chạy thử các chương trình cĩ sẵn.
- Biết giải một số bi tốn tính tốn, tìm kiếm đơn giản trn my tính.
- Khai bo kiểu dữ liệu mảng.
- Nhập dữ liệu cho mảng, đưa ra màn hình chỉ số v ccphần tử của mảng.
- Duyệt qua tất cả cc phần tử của mảng để xử lí từng phần tử
- Cung cấp cho học sinh ba thuật toán cơ bản và đơn giản thường gặp với dữ liệu kiểu mảng.
Ngày soạn: 09/11/09 Tiết 26 Ngày giảng: 13/11/09 Bài. 12 THỰC HÀNH 3 (Tiết 2) Mục tiêu 1. Kiến thức: Nõng cao kĩ năng sử dụng một số cõu lệnh và một số kiểu dữ liệu thong qua việc tỡm hiểu, chạy thử cỏc chương trỡnh cú sẵn. Biết giải một số bài toỏn tớnh toỏn, tỡm kiếm đơn giản trờn mỏy tớnh. Khai bỏo kiểu dữ liệu mảng. Nhập dữ liệu cho mảng, đưa ra màn hỡnh chỉ số và cỏcphần tử của mảng. Duyệt qua tất cả cỏc phần tử của mảng để xử lớ từng phần tử Cung cấp cho học sinh ba thuật toỏn cơ bản và đơn giản thường gặp với dữ liệu kiểu mảng. 2. Kĩ năng: Nõng cao kĩ năng sử dụng một số lệnh kiểu dữ liệu mảng một chiều trong lập trỡnh, cụ thể: + Khai bỏo kiểu dữ liệu mảng một chiều. + Nhập/xuất dữ liệu cho mảng. + Duyệt qua tất cả cỏc phần tử của mảng để xử lý từng phần tử. Biết giải một số bài toỏn cơ bản thường gặp: + Tớnh tổng cỏc phần tử thoả món điều kiện nào đú. + Đếm số cỏc phần tử thoả món điều kiện nào đú. + Tỡm phần tử lớn nhất, nhỏ nhất. 3.Tư duy: Sử dụng mảng để giảm độ cồng kềnh dài dũng của cõu lệnh for to do 4. Thỏi độ: Gúp phần rốn luyện tỏc phong, tư duy lập trỡnh: Tự giỏc, tich cực, chủ động và sỏng tạo trong tỡm kiếm kiến thức. ` Chuẩn bị bài giảng Phương tiện: GV: Giỏo ỏn, phũng mỏy . HS: Những hiểu biết về mảng 1 chiều và mảng 2 chiều. Phương pháp dạy học Gợi mở vấn đáp Đàm thoại Đặt vấn đề Tiến trình dạy học Kiểm tra bài cũ: Kết hợp trong giờ thực hành. Nội dung bài giảng: Hoạt động 1 Tỡm Max Hoạt động của giáo viên Hoạt động cua học sinh 1. Lấy một vớ dụ thực tiễn: Người mự tỡm viờn sỏi cú kớch thước lớn nhất trong một dóy cỏc viờn sỏi để gợi ý cho học sinh thuật toỏn tỡm giỏ trị lớn nhất. - Yờu cầu: nờu thuật toỏn tỡm phần tử cú giỏ trị lớn nhất. 2. Tỡm hiểu chương trỡnh tỡm chỉ số và giỏ trị lớn nhất. - Chiếu chương trỡnh vớ dụ, sỏch giỏo khoa, trang 64. program MaxElement; const Nmax= 100; type MyArray = array[1..Nmax] of integer; var A: Myarray; n,i,j: integer; begin write('Nhap so luong phan tu cua day so, N = '); readln(N); for i:=1 to n do begin write('Phan tu thu ',i,' = '); readln(A[i]); end; j:= 1; for i:= 2 to n do if A[i] > A[j] then j:= i; write('Chi so: ',j, ' Gia tri: ',A[j]:4); readln end. - Hỏi: Vai trũ của biến j trong chương trỡnh? - Hỏi: Nếu muốn tỡm phần tử nhỏ nhất, cần sửa ở chỗ nào? - Hỏi: Nếu muốn tỡm phần tử lớn nhất với chỉ số lớn nhất ta sửa ở chỗ nào? 3. Đặt yờu cầu mới: Viết chương trỡnh đưa ra cỏc chỉ số của cỏc phần tử cú giỏ trị lớn nhất. - Hỏi: Cần giữ lại đoạn chương trỡnh tỡm giỏ trị lớn nhất khụng? - Hỏi: Cần thờm lệnh nào nữa? - Hỏi: Vị trớ thờm cỏc lệnh đú? - Yờu cầu: Viết chương trỡnh hoàn thiện. program MaxElement; const Nmax= 100; type MyArray = array[1..Nmax] of integer; var A: Myarray; n,i,j: integer; begin write('Nhap so luong phan tu cua day so, N = '); readln(N); for i:=1 to n do begin write('Phan tu thu ',i,' = '); readln(A[i]); end; j:= 1; for i:= 2 to n do if A[i] > A[j] then j:= i; write('Chi so: ',j, ' Gia tri: ',A[j]:4); readln end. - Yờu cầu học sinh nhập dữ liệu vào của giỏo viờn và bỏo kết quả. - Đỏnh giỏ kết quả của học sinh. 1. Theo dừi vớ dụ của giỏo viờn. - So sỏnh lần lượt từ trỏi sang phải, giữ lại chỉ số của phần tử lớn nhất. 2. Quan sỏt chương trỡnh, suy nghĩ và trả lời. program MaxElement; const Nmax= 100; type MyArray = array[1..Nmax] of integer; var A: Myarray; n,i,j: integer; begin write('Nhap so luong phan tu cua day so, N = '); readln(N); for i:=1 to n do begin write('Phan tu thu ',i,' = '); readln(A[i]); end; j:= 1; for i:= 2 to n do if A[i] > A[j] then j:= i; write('Chi so: ',j, ' Gia tri: ',A[j]:4); readln end. - Giữ lại chỉ số của phần tử cú giỏ trị lớn nhất. - Phộp so sỏnh a[i]<a[j] - Chuyển thứ tự duyệt từ n-1 về 1. 3. Theo dừi yờu cầu, suy nghĩ cỏc cõu hỏi định hướng để viết chương trỡnh. - Cú. - Lệnh để in ra cỏc chỉ số cú giỏ trị bằng giỏ trị lớn nhất tỡm được. - Sau khi tỡm được giỏ trị lớn nhất. - Soạn chương trỡnh vào mỏy. Thực hiện chương trỡnh và thụng bỏo kết quả. program MaxElement; const Nmax= 100; type MyArray = array[1..Nmax] of integer; var A: Myarray; n,i,j: integer; begin write('Nhap so luong phan tu cua day so, N = '); readln(N); for i:=1 to n do begin write('Phan tu thu ',i,' = '); readln(A[i]); end; j:= 1; for i:= 2 to n do if A[i] > A[j] then j:= i; write('Chi so: ',j, ' Gia tri: ',A[j]:4); readln end. - Nhập dữ liệu vào và thụng bỏo cho giỏo viờn dữ liệu ra. Hoạt động 2 Kết thỳc bài thực hành lưu bài Hoạt động của giáo viên Hoạt động cua học sinh Lưu và thoỏt khỏi chương trỡnh , tắt mỏy an toàn . nghe thày giỏo ra bài tạp về nhà và chuẩn bị cho bào học mới . Củng cố: Một số thuật toỏn cơ bản: + Tớnh tổng cỏc phần tử thoả món điều kiện nào đú. + Đếm số cỏc phần tử thoả món điều kiện nào đú. + Tỡm phần tử lớn nhất, nhỏ nhất. Dặn dò: Xem nội dung của bài thực hành số 4, sỏch giỏo khoa, trang 65. Nhận xét Phương pháp: Hiệu quả sử dụng: Hiệu quả SD TBDH: ND cần điểu chỉnh: Nhận xét của giáo viên hướng dẫn:
Tài liệu đính kèm: