- 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.. Kĩ năng: - Nâng cao kĩ năng sử d[r]
(1)Ngµy so¹n: 09/11/09 Ngµy gi¶ng: 13/11/09 TiÕt 26 Bµi 12 THỰC HÀNH (Tiết 2) I Môc tiªu Kiến thức: - Nâng cao kĩ sử dụng số câu lệnh và số kiểu 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 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 liệu mảng - Nhập liệu cho mảng, đưa màn hình số và cácphần tử mảng - Duyệt qua tất các phần tử mảng để xử lí phần tử - Cung cấp cho học sinh ba thuật toán và đơn giản thường gặp với liệu kiểu mảng Kĩ năng: - Nâng cao kĩ sử dụng số lệnh kiểu liệu mảng chiều lập trình, cụ thể: + Khai báo kiểu liệu mảng chiều + Nhập/xuất liệu cho mảng + Duyệt qua tất các phần tử mảng để xử lý phần tử - Biết giải số bài toá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ỏ 3.T duy: - Sử dụng mảng để giảm độ cồng kềnh dài dòng câu lệnh for to … Thái độ: - Góp phần rèn luyện tác phong, tư lập trình: Tự giác, tich cực, chủ động và sáng tạo tìm kiếm kiến thức ` II.ChuÈn bÞ bµi gi¶ng 1) Phương tiện: - GV: Giáo án, phòng máy - HS: Những hiểu biết mảng chiều và mảng chiều 2) Phương pháp dạy học - Gợi mở vấn đáp §µm tho¹i GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com (2) - Đặt vấn đề III TiÕn tr×nh d¹y häc 1) KiÓm tra bµi cò: - Kết hợp thực hành 2) Néi dung bµi gi¶ng: Hoạt động Tìm Max Hoạt động giáo viên Hoạt động cua học sinh Lấy ví dụ thực tiễn: Người mù tìm Theo dõi ví dụ giáo viên viên sỏi có kích thước lớn dãy các viên sỏi để gợi ý cho học sinh thuật toán tìm giá trị lớn - Yêu cầu: nêu thuật toán tìm phần tử có giá trị lớn - So sánh từ trái sang phải, giữ lại Tìm hiểu chương trình tìm số và giá số phần tử lớn trị lớn Quan sát chương trình, suy nghĩ và trả lời - Chiếu chương trình ví dụ, sách giáo khoa, program MaxElement; trang 64 program MaxElement; const Nmax= 100; const Nmax= 100; type MyArray = array[1 Nmax] of integer; type MyArray = array[1 Nmax] of integer; var A: Myarray; var A: Myarray; n,i,j: integer; n,i,j: integer; begin begin write('Nhap so luong phan tu cua day so, N = '); write('Nhap so luong phan tu cua day so, N readln(N); = '); readln(N); for i:=1 to n for i:=1 to n begin begin write('Phan tu thu ',i,' = '); write('Phan tu thu ',i,' = '); readln(A[i]); end; GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com (3) readln(A[i]); j:= 1; end; for i:= to n if A[i] > A[j] then j:= i; j:= 1; write('Chi so: ',j, ' Gia tri: ',A[j]:4); for i:= to n if A[i] > A[j] then j:= i; readln write('Chi so: ',j, ' Gia tri: ',A[j]:4); end readln end - Giữ lại số phần tử có giá trị lớn - Hỏi: Vai trò biến j chương - Phép so sánh a[i]<a[j] trình? - Chuyển thứ tự duyệt từ n-1 - Hỏi: Nếu muốn tìm phần tử nhỏ nhất, cần sửa chỗ nào? Theo dõi yêu cầu, suy nghĩ các câu hỏi định - Hỏi: Nếu muốn tìm phần tử lớn với hướng để viết chương trình số lớn ta sửa chỗ nào? Đặt yêu cầu mới: Viết chương trình đưa các số các phần tử có giá trị lớn - Có - Hỏi: Cần giữ lại đoạn chương trình tìm - Lệnh để in các số có giá trị giá trị giá trị lớn không? lớn tìm - Hỏi: Cần thêm lệnh nào nữa? - Sau tìm giá trị lớn - Hỏi: Vị trí thêm các lệnh đó? - Soạn chương trình vào máy Thực chương trình và thông báo kết - Yêu cầu: Viết chương trình hoàn thiện program MaxElement; const Nmax= 100; program MaxElement; type MyArray = array[1 Nmax] of integer; const Nmax= 100; var A: Myarray; type MyArray = array[1 Nmax] of integer; n,i,j: integer; var A: Myarray; begin n,i,j: integer; write('Nhap so luong phan tu cua day so, N = GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com (4) begin '); write('Nhap so luong phan tu cua day so, N readln(N); = '); for i:=1 to n readln(N); begin for i:=1 to n write('Phan tu thu ',i,' = '); begin readln(A[i]); write('Phan tu thu ',i,' = '); end; readln(A[i]); j:= 1; end; for i:= to n if A[i] > A[j] then j:= i; j:= 1; write('Chi so: ',j, ' Gia tri: ',A[j]:4); for i:= to n if A[i] > A[j] then j:= i; readln write('Chi so: ',j, ' Gia tri: ',A[j]:4); end readln - Nhập liệu vào và thông báo cho giáo viên liệu end - Yêu cầu học sinh nhập liệu vào giáo viên và báo kết - Đánh giá kết học sinh Hoạt động Kết thúc bài thực hành lưu bài Hoạt động giáo viên Lưu và thoát khỏi chương trình , tắt máy an toàn nghe thày giáo bài tạp nhà và chuẩn bị cho bào học Hoạt động cua học sinh 3) Cñng cè: Một số thuật toán 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ỏ 4) DÆn dß: GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com (5) - Xem nội dung bài thực hành số 4, sách giáo khoa, trang 65 IV 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 giáo viên hướng dẫn: GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com (6)