1, Về kiến thức.
- Biết vai trò của chương trình con trong lập trình.
- Biết sự phân loại chương trình con: Thủ tục và Hàm.
- Biết được cấu trúc của chương trình con.
- Biết cách thực hiện một chương trình con
2, Về kỹ năng.
- Nhận biết được các thành phần trong đầu của thủ tục.
- Nhận biết được hai loại tham số hình thức trong đầu của hai thủ tục.
- Biết cách khai báo hai loại chương trình con cùng với tham số hình thức của chúng.
- Cách viết lời gọi chương trình con trong thân chương trình chính.
3, Về thái độ.
- Học sinh hiểu bài và hứng thú với bài học.
- Rèn luyện tính tự giác trong học tập, tư duy logic
- Nghiêm túc trong giờ học
- Có nhận thức đúng về bài học, môn học
Ngày soạn: 22/05/2020 Ngày dạy:.. Dạy lớp: Tiết:30 Bài 17: CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI I, Mục tiêu. 1, Về kiến thức. Biết vai trò của chương trình con trong lập trình. Biết sự phân loại chương trình con: Thủ tục và Hàm. Biết được cấu trúc của chương trình con. Biết cách thực hiện một chương trình con 2, Về kỹ năng. Nhận biết được các thành phần trong đầu của thủ tục. Nhận biết được hai loại tham số hình thức trong đầu của hai thủ tục. Biết cách khai báo hai loại chương trình con cùng với tham số hình thức của chúng. Cách viết lời gọi chương trình con trong thân chương trình chính. 3, Về thái độ. Học sinh hiểu bài và hứng thú với bài học. Rèn luyện tính tự giác trong học tập, tư duy logic Nghiêm túc trong giờ học Có nhận thức đúng về bài học, môn học 4. Năng lực cần đạt. Tự tin đưa ra các ý kiến cá nhân khi làm việc ở lớp ở nhà. Chủ động trao đổi với các HS khác và với GV. Hợp tác chặt chẽ với các bạn khi làm nhiệm vụ nghiên cứu. II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH 1. Chuẩn bị của Giáo viên: Giáo án, SGK, SGV, máy chiếu, 2. Chuẩn bị của Học sinh: Sách giáo khoa, chuẩn bị bài ở nhà III. QÚA TRÌNH TỔ CHỨC HOẠT ĐỘNG CHO HỌC SINH 1. Các hoạt động đầu giờ - Ổn định tổ chức 2. Khung tiến trình dạy học Hoạt động Nội dung Hoạt động học tập của HS Thời gian Khởi động Nd1. Nhắc lại kiến thức cũ. HĐ1: Chú ý lắng nghe và trả lời câu hỏi của GV. 5 Hình thành kiến thức Nd2. Khái niệm chương trình con. Nd3. Phân loại và cấu trúc của chương trình con. HĐ2: Quan sát ví dú của giáo viên đưa ra và đưa ra khái niệm CTC. HĐ3: Phân loại biết được cấu trúc của 1 CTC. 28 Luyện tập vận dụng Nd4. Hệ thống kiến thức HĐ4: Củng cố luyện tập 10 Mở rộng d5. Tự học ở nhà HĐ5: Mở rộng và tự học ởnhà 2 3. Nội dung bài học A. KHỞI ĐỘNG Hoạt động 1: Đưa ra 1 câu hỏi về tính lũy thừa Tluythua=an+bm+cp+dq cho hs yêu cầu hs sử dụng câu lệnh trong pascal để tính được an+bm+cp+dq mỗi nhóm viết câu lệnh tính 1 phần tử. (5’). Mục tiêu dẫn dắt học sinh vào bài mới. Phương pháp/kĩ thuật dạy học: Trình chiếu bằng máy chiếu và đặt câu hỏi. Hình thức tổ chức hoạt động: Nhóm. Phương tiện dạy học: SGK, Projector, máy tính, bài soạn. Sản phẩm: Học sinh hiểu qua những gì mình sắp được học trong bài. Nội dung hoạt động Đưa ra 1 bài bài toán Tluythua=an+bm+cp+dq yêu cầu từng nhóm dùng câu lệnh pascal để tính các phẩn tử an+bm+cp+dq viết ra giấy mỗi nhóm tính một phàn tử. Đặt ra câu hỏi vậy muốn tính 50 phần tử thì ta phải làm như thế nào? Dẫn dắt vào bài mới. B. HÌNH THÀNH KIẾN THỨC Hoạt động 2: Khái niệm chương trình con. (28’) Mục tiêu: Biết được thế nào là một chương trình con chương trình con có lợi ích gì. Phương pháp/kĩ thuật dạy học: Đàm thoại, thuyết trình. Hình thức tổ chức hoạt động: Cá nhân 4. Phương tiện dạy học: SGK, Projector, máy tính, bài soạn 5. Sản phẩm: Học sinh nắm bắt được thế nào là chương trình con. Nội dung hoạt động Hoạt động của giáo viên Hoạt động của học sinh Nội dung * Hoạt động 2 1.Khái niệm chương trình con. GV: Chiếu lên 1 chương trình tính tổng 4 lũy thừa nhưng không sử sụng CTC. Program tinh_tong; Uses crt; Var Tluythua, Tluythua1, Tluythua2, Tluythua3, Tluythua4: real; a, b, c, d: real; i, n, m, p, q: integer; begin Clrscr; write (‘ Hay nhap du lieu theo thu tu a, b, c, d, m, n, p, q’); readln(a,b,c,d,m,n,p,q); luythua1 := 1.0; for i:=1 to n do Luythua1 := Luythua1*a; luythua2 := 1.0; for i:=1 to m do Luythua2 := Luythua2*b; luythua3 := 1.0; for i:=1 to p do Luythua3 := Luythua3*c; luythua4 := 1.0; for i:=1 to q do Luythua4 := Luythua4*d; Tluythua := Luythua1 +Luythua2+ Luythua3+ Luythua4; Writeln(‘tong luy thua=’, Tluythua:8:4); Readln End. GV: Các dãy lệnh nào tương tự nhau? GV: Nếu muốn tính tổng của 50 lũy thừa thì phải làm sao? GV: Chương trình này có dài không? Có dễ theo dõi và dễ nâng cấp không? GV: Chiếu lên 1 chương trình tính tổng 4 lũy thừa có sử sụng CTC. Program tinh_tong; Uses crt; Var Tluythua, a, b, c, d: real; i, m, n, p, q: integer; Function Luythua(var x:real; var k: integer): real; Var j : integer; Tich: real; Begin Tich :=1.0; For j :=1 to k do Tich :=Tich*x; Luythua:=Tich; End; Begin Clrscr; Writeln(‘hay nhap du lieu theo thu tu a, b, c, d, m, n, p, q’); Readln(a, b, c, d, m, n, p, q); Tluythua : =Luythua(a,n)+ Luythua(b,m)+ Luythua(c,p)+ Luythua(d,q); Writeln(‘tong luy thua=’, Tluythua:8:4); Readln End. GV: Đây là chương trình có sử dụng CTC để tính lũy thừa của một dãy số. GV: Các em thấy chương trình này có ngắn gọn hơn chương trình trước không? GV: Nếu muốn tính tổng của 50 lũy thừa thì các em có phải viết lệnh lặp đi lặp lại không? GV: Quan sát ví dụ đâu là CTC? GV: Đâu là đoạn thực hiện sử dụng CTC? GV: Dựa vào ví dụ trên và sách giáo khoa em cho thầy biết CTC là gì? GV: Việc sử dụng CTC có lợi ích gì? GV: Như vậy ở phần 1 các em đã nắm được khái niệm CTC là gì và các lợi ích của việc sử dụng CTC chúng ta cùng nhau chuyển sang phần 2. HS: Quan sát chương trình. HS: luythua1 := 1.0; for i:=1 to n do Luythua1 := Luythua1*a; luythua2 := 1.0; for i:=1 to m do Luythua2 := Luythua2*b; luythua3 := 1.0; for i:=1 to p do Luythua3 := Luythua3*c; luythua4 := 1.0; for i:=1 to q do Luythua4 := Luythua4*d; HS: Muốn tính tổng của 50 lũy thừa thì phải viết 50 câu lệnh lặp đi lặp lại. HS: Chương trình dài khó theo dõi khó nâng cấp. HS: Có ngắn gọn hơn không phải viết lặp đi lặp lại các câu lệnh. HS: Không HS: Function Luythua(var x:real; var k: integer): real; Var j : integer; Tich: real; Begin Slrscr; Tich :=1.0; For j :=1 to k do Tich :=Tich*x; Luythua:=Tich; End; HS: Tluythua : =Luythua(a,n)+ Luythua(b,m)+ Luythua(c,p)+ Luythua(d,q); HS: CTC là một dãy lệnh mô tả một số thao tác nhất định và có thể được thực hiện ( được gọi) từ nhiều vị trí trong chương trình. HS: - Tránh được việc phải viết lặp đi lặp lại 1 dãy lệnh. - Hỗ trợ việc thực hiện các chương trình lớn. - Phục vụ cho quá trình trìu tượng hóa. - Mở rộng khả năng ngôn ngữ. - Thuận tiện cho phát triển, nâng cấp chương trình. 1.Khái niệm chương trình con. - CTC là một dãy lệnh mô tả một số thao tác nhất định và có thể được thực hiện ( được gọi) từ nhiều vị trí trong chương trình. Lợi ích sử dụng CTC - Tránh được việc phải viết lặp đi lặp lại 1 dãy lệnh. - Hỗ trợ việc thực hiện các chương trình lớn. - Phục vụ cho quá trình trìu tượng hóa. - Mở rộng khả năng ngôn ngữ. - Thuận tiện cho phát triển, nâng cấp chương trình. Hoạt động 3: Phân loại và cấu trúc của chương trình con. 1. Mục tiêu phân loại được chương trình con, nắm được cấu trúc của 1 chương trình con. 2. Phương pháp/kĩ thuật dạy học: Đàm thoại, thuyết trình. 3. Hình thức tổ chức hoạt động: Cá nhân 4. Phương tiện dạy học: SGK, Projector, máy tính, bài soạn 5. Sản phẩm: HS có thể tự phân loại được CTC biết được cấu trúc của 1 CTC. Hoạt động của giáo viên Hoạt động của học sinh Nội dung Hoạt động 3 2. Phân loại và cấu trúc của chương trình con. a) Phân loại GV: Các em quan sát lại ví dụ 2 các em có thấy từ khóa nào mới (chưa học) không? GV: Vậy theo các em hàm (Function) Là gì? GV: Ví dụ: hàm toán học sin(x) nhận giá trị thực x và trả về giá trị sin(x). GV: Đưa ra một số ví dụ về thủ tục (procedure). 1. Readln(a,b); à Nhập a,b 2. Writeln(‘Hello’); à In chữ Hello (Writeln ở đây là thủ tục chuẩn) GV: Dựa vào các ví dụ trên em nào cho thầy biết thủ tục (procedure). là gì? GV: Như vậy các em đã nắm được khái niệm CTC là gì và các lợi ích của việc sử dụng CTC biết phân loại được CTC vậy theo các em CTC có cấu trúc ntn chúng ta cùng nhau tìm hiểu phần b. b) Cấu trúc chương trình con. GV: Dựa vào ví dụ 2 theo các em cấu trúc chương trình con gồm mấy phần? GV: Quan sát ví dụ 2 của chương trình nằm ở đâu? GV: Phần [] của chương trình nằm ở đâu? GV: của chương trình nằm ở đâu? GV: Các tham số hình thức trong ví dụ 2 như tham số x và tham số k. GV: Các biến cục bộ là các tham số hình thức j, và cácTich. GV: Các biến toàn cục là phần khai báo trong ví dụ Var Tluythua, a, b, c, d: real; i, m, n, p, q: integer; GV: Theo các em 1 chương trình con có thể không có tham số hình thức và các biến cục bộ không? GV: Như vậy các em đã nắm được khái niệm CTC là gì và các lợi ích của việc sử dụng CTC biết phân loại được CTC các CTC có cấu trúc ntn chúng ta cùng nhau tìm hiểu phần c. c) Thực hiện CTC. GV: Yêu cầu hs quan sát tiếp ví dụ 2 GV: Đâu là nơi thực hiện CTC? HS: Có hàm Function HS: Hàm (function) là CTC thực hiện 1 số thao tác nào đó và trả về một giá trị qua tên của nó. HS: Thủ tục (procedure) là CTC thực hiện các thao tác nhất định nhưng không trả về giá trị nào qua tên của nó. HS: Cấu trúc chương trình con gồm 3 phần: [] HS: Function Luythua(var x:real; var k: integer): real; HS: [] Var j : integer; Tich: real; HS: Begin Slrscr; Tich :=1.0; For j :=1 to k do Tich :=Tich*x; Luythua:=Tich; End; HS: 1 chương trình con có thể có hoặc không có tham số hình thức và các biến cục bộ. HS: Tluythua : =Luythua(a,n)+ Luythua(b,m)+ Luythua(c,p)+ Luythua(d,q); 2. Phân loại và cấu trúc của chương trình con. a) Phân loại - Hàm (function) là CTC thực hiện 1 số thao tác nào đó và trả về một giá trị qua tên của nó. - Thủ tục (procedure) là CTC thực hiện các thao tác nhất định nhưng không trả về giá trị nào qua tên của nó. Cấu trúc chương trình con gồm 3 phần: [] C. LUYỆN TẬP VẬN DỤNG Hoạt động 4: (10’) Củng cố, luyện tập 1. Mục tiêu: Hệ thống lại các kiến thức đã học. 2. Phương pháp/kĩ thuật dạy học: Đàm thoại, thuyết trình. 3. Hình thức tổ chức hoạt động: Cá nhân. 4. Phương tiện dạy học: SGK, Projector, máy tính, bài soạn 5. Sản phẩm: Hệ thống lại các kiến thức đã học. Hoạt động của giáo viên Hoạt động của học sinh Chọn đáp án đúng trong 4 đáp án GV: Câu 1. Cấu trúc chương trình Pascal gồm những thành phần nào? Câu 2. Chương trình con là một dãy lệnh mô tả một số thao tác nhất định và có thể được thực hiện Câu 3. Cho các lệnh sau đây, lệnh nào thuộc Hàm (Function) trong Pascal? Câu 4. Em hãy điền vào ô trống những từ thích hợp Hàm (Function) là.. . . .(1) . . ... ... thực hiện một số thao tác nào đó và trả về một giá trị qua . . .(2). của nó Thủ tục (Procedure) là chương trình con thực hiện một số . .(3) . . .nào đó nhưng không . . . .(4) .. . .. một giá trị nào qua tên của nó. HS: Đáp án C. Phần đầu, Phần khai báo, Phần thân HS: Đáp án D. từ nhiều vị trí trong chương trình. HS: Đáp án B.SQRT HS: Đáp án 1 Chương trình con 2 Tên 3 Thao tác 4 Trả về D. MỞ RỘNG Hoạt động 5 (2phút): Mở rộng và tự học ở nhà 1. Mục tiêu: Hệ thống lại các kiến thức về các chương trình con và phân loại. 2. Phương pháp/kĩ thuật dạy học: Đàm thoại, thuyết trình. 3. Hình thức tổ chức hoạt động: Cá nhân. 4. Phương tiện dạy học: SGK, Projector, máy tính, bài soạn 5. Sản phẩm: Hệ thống lại các kiến thức và có thể làm được các bài tập được giao. Nội dung Bước 1. GV giao nhiệm vụ cho học sinh thực hiện ở nhà: Học lại bài cũ ở nhà và xem trước bài mới Bước 2. Thực hiện nhiệm vụ - HS: Nhận nhiệm vụ,chuẩn bị ở nhà ra sách bài tập. - GV: Định hướng 1 số ý bài tập mà hs chưa rõ hướng đi. 4. Rút kinh nghiệm Tồn tại, hạn chế, những vấn đề cần điều chỉnh, bổ xung, thay đổi Nguyên nhân Giải pháp:
Tài liệu đính kèm: