Triệu Thị Thu Giang_K56A_CNTT_ĐHSPHN 1 Giáo án số 18(tiết2) Ví dụ về cách viết và sử dụng chương trình con A. Mục đích và yêu cầu: Giúp học sinh nắm được sự giống nhau và khác nhau giữa thủ tục và hàm Giúp học sinh có kĩ năng nhận biết được các thành phần trong đầu hàm, nhận biết được câu lệnh sử dụng hàm ở chương trình chính cùng các tham số thực sự. B. Phương pháp, phương tiện: 1. Phương pháp: Kết hợp các phương pháp dạy học như thuyết trình, vấn đáp, minh hoạ… Kết hợp lí thuyết với việc thực hành ví dụ và phân tích ví dụ cho học sinh hiểu dõ vấn đề. 2. Phương tiện: a) Phương tiện giảng dạy: Sử dụng các phương tiện giảng dạy truyền thống như bảng viết, phấn…(nếu có máy chiếu projector thì tốt hơn). Giáo án đã được soàn đầy đủ và cẩn thận. b) Phương tiện học tập: Sách giáo khoa tin học lớp 11. Vở ghi lí thuyết và vở làm bài tập lớp 11. Sách tham khảo nếu có thì càng tốt. C. Tiến trình lên lớp và nội dung bài giảng: I. Ổn định lớp(1’): Yêu cầu lớp trưởng ổn định lớp và báo cáo sĩ số. II. Kiểm tra bài cũ và gợi động cơ(4’): Triệu Thị Thu Giang_K56A_CNTT_ĐHSPHN 2 a) Kiểm tra bài cũ(3’): Hỏi: Em hãy phân biệt tham số giá trị(gọi tắt là tham số trị) và tham số biến(gọi tắt là tham biến) trong CTC thủ tục. b) Gợi động cơ(1’): Khi viết CT giải các bài toán lớn, phức tạp, CT thường rất dài gồm hàng trăm, hàng ngàn lệnh đòi hỏi phân chia thành các bài toán con. Do vậy cần định CT thành các khối (các môđun), mỗi khối bao gồm các lệnh giải quyết một bài toán cụ thể nào đó. Các khối lệnh sẽ được xây dựng dưới dạng CTC. Sau đó CT chính sẽ được xây dựng từ các CTC này. III. Nội dung của bài học: STT Nội dung Hoạt động của thầy và trò Thời gian 1 Đặt vấn đề Thuyết trình - CTC gồm hai loại CTC hàm và CTC thủ tục. Buổi học ngày hôm trước, chúng ta đã tìm hiểu cách viết và sử dụng thủ tục. Buổi học ngày hôm nay, chúng ta sẽ tìm hiểu nốt loại CTC còn lại qua bài “Cách viết và sử dụng hàm”. 1’ Triệu Thị Thu Giang_K56A_CNTT_ĐHSPHN 3 2 Nội dung bài học 1. Khái niệm: Hàm là một khối CT có chức năng thực hiện một nhiệm vụ cụ thể nào đó, kết quả cho ta một giá trị. Khai báo hàm: 1, Tiêu đề FUNCTION <Tên hàm> ([<Danh sách tham số>]) :<Kiểu của hàm>; 2, Các khai báo; 3, Thân CT: BEGIN Các lệnh; End; Trong đó: Kiểu của hàm là kiểu kết quả của hàm và chỉ có thể là một trong các kiểu: Integer, Real, Char, Boolean, String. Nếu hàm không có tham số hình thức thì không cần viết Danh sách tham số. Hàm có cấu trúc tương tự Thuyết trình Cũng như thủ tục, hàm là CTC. Giữa hàm và thủ tục có nhiều sự giống và khác nhau: Điểm giống nhau: - Đều là CTC, có cấu trúc giống một CT; - Đều có thể chứa các tham số(tham số giá trị và tham số biến), cùng tuân theo các quy định về khai báo và sử dụng các loại tham số này, Điểm khác nhau cơ bản của hàm so với thủ tục: - Đầu hàm bắt đầu với từ khoá FUNCTION, sau tên hàm và phần khai báo danh sách tham số (nếu có) phải chỉ ra giá trị kết quả của hàm thuộc kiểu dữ liệu nào. - Trong CT hàm bắt buộc 35’ Triệu Thị Thu Giang_K56A_CNTT_ĐHSPHN 4 th ủ tục chỉ khác phần đầu hàm. Trong thân của hàm cần có câu lệnh gán giá trị cho tên hàm: <Tên hàm> := <Biểu thức> Ví dụ: CT giản ước phân số có sử dụng hàm tính ước chung lớn nhất (ucln) của hai số nguyên PROGRAM gian_uoc_phan_so; USES CRT; VAR tuso, mauso, a: integer; FUNCTION ucln(x,y: integer): integer; VAR du: integer; BEGIN WHILE y<>0 DO BEGIN du:= x mod y; ph ải có một l ệnh gán giá trị kết quả cho tên hàm Chú ý: Hàm cần được khai báo và định nghĩa trước khi sử dụng Triệu Thị Thu Giang_K56A_CNTT_ĐHSPHN 5 x:=y; y:=du; END; ucln:=x; END; BEGIN Clrscr; Writeln(‘nhap tu so, mau so vao ’); Readln(tuso,mauso); A:=ucln(tuso,mauso); IF A> 1 THEN BEGIN tuso:=tuso div A; mauso:=mauso div A; END; Writeln(tuso: 5, mauso: 5); END. 2. Sử dụng: Tương tự việc sử dụng các hàm chuẩn: viết tên hàm cần gọi, thay thế các tham số hình thức bằng các tham số thực sự tương Ví dụ: tg:=ucln(tuso,mauso)*2+1; Triệu Thị Thu Giang_K56A_CNTT_ĐHSPHN 6 ứng. Lời gọi hàm có thể tham gia vào biểu thức như một toán hạng hoặc là tham số của lời gọi hàm, thủ tục khác. Phân tích ví d ụ c òn l ại trong SGK cho học sinh hiểu thêm về CTC hàm. D. Củng cố bài học(2’): Qua bài học này,chúng ta cần nắm vững: 1, Cách khai báo và sử dụng hàm; 2, So sánh CTC thủ tục và CTC hàm. Rút ra nhận xét. E. Bài tập về nhà(2’): Bài tập: Viết CT tính giá trị biểu thức sau: Z= a/b + c/d (a, b, c, d bất kì được đưa vào từ bàn phím) F. Nhận xét và những hạn chế trong giờ giảng: . Giang_K56A_CNTT_ĐHSPHN 1 Giáo án số 18(tiết2) Ví dụ về cách viết và sử dụng chương trình con A. Mục đích và yêu cầu: Giúp học sinh nắm được sự giống nhau và khác nhau giữa thủ tục và hàm Giúp học. 2. Sử dụng: Tương tự việc sử dụng các hàm chuẩn: viết tên hàm cần gọi, thay thế các tham số hình thức bằng các tham số thực sự tương Ví dụ: . giống một CT; - Đều có thể chứa các tham số( tham số giá trị và tham số biến), cùng tuân theo các quy định về khai báo và sử dụng các loại tham số này, Điểm khác nhau cơ bản của hàm so