I. Mục tiêu
1. Kiến thức:
- Củng cố lại kiến thức về chương trình con: thủ tục, hàm, tham số biến và tham số giá trị, biến toàn bộ và biến cục bộ.
2. Kĩ năng:
- Sử dụng được chương trình để giải quyết trọn vẹn một bài toán trên máy tính.
II. Đồ dùng dạy học
1. Chuẩn bị của giáo viên
- Máy vi tính, tổ chức lại phòng máy để học sinh có được các kĩ năng cơ bản trong việc tổ chức và sử dụng chương trình con trong lập trình.
2. Chuẩn bị của học sinh
- Sách giáo khoa.
III. Hoạt động dạy – học
BàI tập và thực hành 7 (Tiết PPCT: 45, 46) Ngày soạn: . Ngày đăng ký giáo án: .......................... Người duyệt giáo án (TTCM duyệt, BGH duyệt): ..................................................................................................................................... ..................................................................................................................................... I. Mục tiêu 1. Kiến thức: - Củng cố lại kiến thức về chương trình con: thủ tục, hàm, tham số biến và tham số giá trị, biến toàn bộ và biến cục bộ. 2. Kĩ năng: - Sử dụng được chương trình để giải quyết trọn vẹn một bài toán trên máy tính. II. Đồ dùng dạy học 1. Chuẩn bị của giáo viên - Máy vi tính, tổ chức lại phòng máy để học sinh có được các kĩ năng cơ bản trong việc tổ chức và sử dụng chương trình con trong lập trình. 2. Chuẩn bị của học sinh - Sách giáo khoa. III. Hoạt động dạy – học 1. Hoạt động 1: Tìm hiểu và xây dựng các hàm, thủ tục và chương trình thực hiện các việc liên quan đến tam giác. a. Mục tiêu - Cho HS biết được các hàm và thủ tục trong chương trình. Hiểu được chức năng của từng chương trình con. Tính được đầu vào và đầu ra của từng chương trình. b. Nội dung: Procedure daicanh(r:tamgiac; var a,b,c:real); nhận đầu vào là một biến r mô tả một tam giác và đầu ra là độ dài của 3 cạnh a, b, c. Function chuvi(var r:tamgiac):real; Cho giá trị là một chu vi của tam giác r. Function dientich(var r:tamgiac):real; Cho giá trị là một diện tích của tam giác r. Procedure tinhchat(var r:tamgiac; var deu,can,vuong:boolean); nhận đầu vào là một biến r mô tả tam giác và đầu ra tính chất của tam giác: đều, cân hoặc vuông. Procedure hienthi(var r:tamgiac); hiển thị toạ độ 3 đỉnh của tam giác lên mạn hình. Function kh_cach(p,q:diem):real; cho giá trị là khoảng cách giữa hai điểm p, q. Các chương trình con được viết trong SGK, trang 106, 107. c. Các bước tiến hành Hoạt động của giáo viên Hoạt động của học sinh 1. Tìm hiểu việc xây dựng hàm và thủ tục. - Chiếu khai báo kiểu dữ liệu diem và tamgiac. Chiếu các hàm và thủ tục lên bảng. - Hỏi: Chức năng của mỗi chương trình con? - Có các tham số nào? Tham số nào ở dạng tham số biến và tham số nào ở dạng tham số trị? 2. Tìm hiểu chương trình câu b, SGK, trang 106. - Chiếu chương trình câu b. - Hỏi: Chương trình thực hiện công việc gì? - Thực hiện chương trình để giúp học sinh thấy được kết quả. - Thay tham biến thành tham trị để học sinh thấy được sự sai khác. 1. Quan sát các chương trình con, các lệnh và các khai báo tham số. - Chức năng của mỗi chương trình con: daicanh(); tính độ dài ba cạnh a, b, c của tam giác r. chuvi():real; Cho giá trị là chu vi của tam giác r. dientich():real; Cho giá trị là diện tích của tam giác r. tinhchat():real; khẳng định tính chất của một tam giác: đều, cân hoặc vuông. hienthi(); hiển thị toạ độ 3 đỉnh của một tam giác lên màn hình. Kh_cach():real; cho giá trị là khoảng cách giữa hai điểm. - Tham số biến r, a, b, c. - Tham số giá trị là p, q. 2. Quan sát chương trình, dự tính chức năng của chương trình. - Nhập vào toạ độ 3 đỉnh của tam giác và khảo sát tính chất của tam giác: cân, vuông, đều. In ra chu vi và diện tích của tam giác. - Quan sát kết quả trên màn hìn để đối chiếu với kết quả tự tính được. - Quan sát và ghi nhớ kết quả để thấy được hiệu ứng thay đổi của tham trị và tham biến. 2. Hoạt động 2: Rèn luyện kĩ năng lập trình a. Mục tiêu - Viết được chương trình có sử dụng chương trình con để tính được số lượng tam giác đều, cân, vuông. b. Nội dung - Viết chương trình sử dụng các hàm và thủ tục đã được xây dựng để giải quyết các bài toán sau: Cho tệp dữ liệu TAMGIAC.INP có cấu trúc như sau: Dòng 1: Ghi số nguyên N (1<=N<=100). N dòng tiếp theo: Mỗi dòng ghi 6 số thực xA yA xB yB xC yC là các toạ độ của 3 đỉnh A, B, C của một tam giác. (-32000<= xA,yA,xB,yB,xC,yC<=32000) Yêu cầu: Đọc dữ liệu từ tệp TAMGIAC.INP, xử lí và đưa kết quả ra tệp TAMGIAC.OUT gồm 3 dòng: Dòng 1: Ghi số lượng tam giác đều. Dòng 2: Ghi sống lượng tam giác cân (nhưng không đều). Dòng 3: Ghi số lượng tam giác vuông. c. Các bước tiến hành Hoạt động của giáo viên Hoạt động của học sinh 1. Phân tích yêu cầu của đề bài. - Chiếu nội dung yêu cầu lên bảng. - Chia lớp thành 2 nhóm. + Nhóm 1: Nêu câu hỏi phân tích để giải quyết bài toán. + Nhóm 2: Trả lời câu hỏi phân tích của nhóm 1 để tìm ra cách giải quyết bài toán. - GV góp ý bổ sung cho câu hỏi phân tích và trả lời phân tích. 2. Lập trình. - Yêu cầu học sinh lập trình trên máy. GV tiếp cận từng học sinh để sửa lỗi cần thiết. - Yêu cầu học sinh nhập dữ liệu vào của giáo viên và báo cáo kết quả của chương trình. - Đánh giá kết quả của học sinh. 1. Quan sát yêu cầu. - Nhóm 1: Đặt câu hỏi. + Dữ liệu vào. + Dữ liệu ra. + Cần sửa những chỗ nào trong chương trình câu b. + Thuật toán để đếm số lượng các loại hình tam giác. - Nhóm 2: Trả lời câu hỏi phân tích. + Cho trong tệp, phải viết lệnh đọc dữ liệu trong tệp. + Ba số nguyên dương là số lượng của ba loại hình tam giác. Ba số được ghi trên ba dòng của một tệp. + Cần thay đoạn chương trình nhập dữ liệu bằng một chương trình con để đọc dữ liệu từ tệp TAMGIAC.INP. Thay đoạn chương trình in kết quả ra màn hình bằng một chương trình con để in ba số nguyên dương là số lượng ba loại hình ra tệp TAMGIAC.OUT + Thuật toán: Nếu deu thì d:=d+1 Ngược lại nếu can thì c:=c+1 ngược lại thì v:=v+1; 2. Độc lập viết chương trình, thực hiện chương trình đối với test tự tạo. - Thông báo kết quả cho giáo viên. - Nhập dữ liệu của giáo viên và báo cáo kết quả. IV. Đánh giá cuối bài. - Cách xây dựng hàm và thủ tục, cách khai báo tham số dạng tham biến và tham trị. - Tìm hiểu một số chương trình con liên quan đến tam giác. Bài tâp về nhà - Cho file dữ liệu như ở bài tập trong hoạt động 2. - Đọc bài đọc thêm: Ai là lập trình viên đầu tiên? SGK, trang 109.
Tài liệu đính kèm: