Giáo án Tin học11 - Bài 17: Chương trình con và phân loại

Giáo án Tin học11 - Bài 17: Chương trình con và phân loại

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

 

docx 16 trang Người đăng hoan89 Lượt xem 1169Lượt tải 0 Download
Bạn đang xem tài liệu "Giáo án Tin học11 - Bài 17: Chương trình con và phân loại", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
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:

  • docxgiao_an_tin_hoc11_bai_17_chuong_trinh_con_va_phan_loai.docx