VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
(Lớp 11, 2 tiết)
1. Thông tin bài học
- Loại giáo án: Giáo án lý thuyết
- Chủ đề lớn: Chủ đề F (Giải quyết vấn đề với sự trợ giúp của máy tính)
- Chủ đề con: Kĩ thuật lập trình (CS)
- Vị trí bài học: Đây là bài học sau khái niệm chương trình con và phân loại.
- Thời lượng: 2 tiết
2. Mục tiêu
a) Kiến thức, kĩ năng
- Hiểu mối liên quan giữa chương trình với hàm, thủ tục.
- Phân biệt kết quả của hàm trả qua tên hàm (khác với thủ tục).
- Nhận biết được các thành phần trong hàm.
- Viết được lệnh gọi hàm.
b) Năng lực được củng cố và phát triển cho HS
- NLc (Giải quyết vấn đề với sự hỗ trợ của công nghệ thông tin và truyền thông): HS được
rèn luyện, bồi dưỡng năng lực giải quyết vấn đề thơng qua học lập trình, đồng thời phát triển
một số thao tác trí tuệ trong hoạt động lập trình.
3. Nội dung bài học
Cung cấp cho học sinh cách viết và sử dụng hàm. Làm quen với lập trình có cấu trúc.
4. Phương pháp, kĩ thuật dạy học và thiết bị, phương tiện dạy học
a. Giáo viên
- Phương tiện dạy học: Giáo án, sách giáo khoa, máy tính, máy chiếu, phiếu học tập.
- Phương pháp dạy học: Thảo luận nhóm, nêu vấn đề, thao tác mẫu, vấn đáp và gợi mở.
b. Học sinh
- Nghiên cứu tài liệu, sách giáo khoa, làm bài tập về nhà, bảng phụ để thảo luận nhóm.
- Thực hiện theo phân cơng của giáo viên và tổ, nhóm tiến hành dự án học tập.
5. Tiến trình sư phạm (1 tiết)
* Nhiệm vụ giao cho nhóm HS ở tiết học trước để HS chuẩn bị khi tiếp tục nghiên cứu
chủ đề:
1. Viết thủ tục tính luỹ thừa x k. Áp dụng thủ tục vào chương trình chính, đưa kết quả luỹ
thừa ra màn hình.
2. Mỗi nhóm thực hiện cụ thể các yêu cầu sau:
- Nhóm 1, 2: Tìm hiểu cách viết và sử dụng hàm.
- Nhóm 3, 4: Phân biệt hàm và thủ tục.
* Kết quả hoạt động nhóm được chuyển qua mail, chuẩn bị trước qua bảng phụ
HS.
Hoạt động 1. Tình huống xuất phát/ khởi động (8 phút)
Mục tiêu hoạt động: Biết vai trò của hàm trong lập trình, HS hiểu được khơng có qui ước
hàm hay thủ tục cho mỗi công việc. Tuỳ vào tính chất cơng việc để lựa chọn hàm, thủ tục.
Nội dung, phương thức tổ chức hoạt động
Dự kiến sản phẩm, đánh giá
học tập của học sinh
kết quả hoạt động
Đặt vấn đề: Theo em, ta nên áp dụng thủ
Ta không nên áp dụng thủ tục cho bài tốn
tục tính luỹ thừa cho bài tốn tính tổng luỹ tính tổng luỹ thừa. Vì thủ tục khơng trả về
thừa sau được khơng? Vì sao?
giá trị qua tên. Mà tổng luỹ thừa ở đây cần
m
n
p
q
Tluythua = a + b + c + d
chương trình con trả về giá trị lần lượt cho
Nếu khơng, ta có thể sử dụng giải pháp nào am, bn, cp, dq.
để tránh việc viết lặp đi, lặp lại dãy lệnh Ta có thể sử dụng hàm trong trường hợp này,
tính luỹ thừa cho bài tốn trên?
vì hàm cho phép trả về một giá trị qua tên
của nó.
Hoạt động 2. Hình thành kiến thức (20 phút)
Mục tiêu hoạt động:
- Biết cấu trúc của hàm, phân biệt được các thành phần trong hàm.
- Phân biệt được hàm và thủ tục.
Nội dung, phương thức tổ chức hoạt động
Dự kiến sản phẩm, đánh giá
học tập của học sinh
kết quả hoạt động
Nội dung 1: Cách viết và sử dụng hàm 2-Cách viết và sử dụng hàm
(10 phút)
a. Cấu trúc của hàm:
* Mời đại diện 1 nhóm lên trình bày nội Function <tên hàm> [(
dung đã chuẩn bị ở nhà.
số>)]: <kiểu dữ liệu>;
-Phát vấn HS các câu hỏi sau:
[<Phần khai báo>]
1. Vị trí của CTC hàm?
Begin
2. Phần đầu của hàm có những thành phần
[<Dãy các lệnh>]
nào?
<tên hàm> := <biểu thức>;
3. Phần thân của hàm cần chú ý vấn đề gì?
End;
4. Sử dụng hàm như thế nào?
Trong đó: Kiểu dữ liệu là kiểu dữ liệu của giá
Nhận xét và hoàn thành.
trị mà hàm trả về và chỉ có thể là các kiểu
integer, real, char, boolean, string.
-Câu lệnh gán giá trị cho tên hàm:
<Tên hàm> := <biểu thức>;
*Sử dụng hàm: hoàn toàn tương tự với việc
sử dụng các hàm chuẩn, khi viết lệnh gọi
hàm gồm tên hàm và tham số thực sự tương
ứng với các tham số hình thức.
-Lệnh gọi hàm có thể tham gia vào biểu thức
như một tốn hạng và thậm chí là tham số
của lời gọi hàm hay thủ tục khác.
Nội dung 2: Phân biệt hàm và thủ tục
* Về mặt ý nghĩa:
(10 phút)
Hàm trả về một giá trị qua tên của nó cịn thủ
* Mời đại diện 1 nhóm lên trình bày nội tục thì khơng.
dung đã chuẩn bị ở nhà.
* Về mặt cấu trúc:
-Phát vấn HS các câu hỏi sau:
- Hàm luôn trả về một giá trị thuộc kiểu xác
1. Về mặt ý nghĩa, hàm và thủ tục khác định thông qua tên hàm. (các kiểu dữ liệu
nhau như thế nào?
đơn giản: integer, real, boolean, char, string).
2. Về mặt cấu trúc, hàm và thủ tục khác - Đầu hàm bắt đầu bằng từ khóa Function
nhau ra sao?
cịn thủ tục bắt đầu với từ khóa Procedure.
3. Nhận xét điểm khác biệt giữa lệnh gọi - Trong thân hàm thường có câu lệnh gán giá
thủ tục và hàm?
trị cho tên hàm.
Nhận xét và hoàn thành.
Hoạt động 3. Luyện tập (12 phút)
Mục tiêu hoạt động: Giúp HS củng cố kiến thức đã học về thủ tục, hàm và các khái niệm
như tham số hình thức, tham số thực sự, biến cục bộ, biến toàn cục, lời gọi hàm.
Nội dung, phương thức tổ chức hoạt động
Dự kiến sản phẩm, đánh giá
học tập của học sinh
kết quả hoạt động
- Hoạt động nhóm: Hồn thành nội dung ở b. Ví dụ hàm
phiếu học tập số 1.
Phiếu học tập số 1.
Nhận xét và cộng điểm nhóm tốt nhất.
- HS hồn thành nội dung theo yêu cầu.
Hoạt động 4. Vận dụng, tìm tịi mở rộng (7 phút)
Mục tiêu hoạt động: HS viết được lời gọi chương trình trên máy. Vận dụng kiến thức
chương trình con viết được chương trình.
Nội dung, phương thức tổ chức hoạt động
Dự kiến sản phẩm, đánh giá
học tập của học sinh
kết quả hoạt động
-Gv gợi ý yêu cầu của đề bài để HS thực Bài tập: Viết chương trình có sử dụng
hiện bài tập.
chương trình con để:
+Xác định bài toán.
1.1.Nhập vào 1 dãy số nguyên A gồm 100
+Ý tưởng thuật tốn.
phần tử.
+Ơn lại kiến thức về kiểu mảng, về chương 1.2.Tính tổng các số chẵn.
trình con.
1.3.Tìm số lớn nhất trong dãy A.
+Xây dựng từng CTC cụ thể, xác định hàm 1.4.Viết kết quả ra màn hình.
hay thủ tục cần dùng.
+ Hồn thành chương trình ở nhà.