KIỂM TRA BÀI CŨ
KHỞI ĐỘNG
BÀI 27. THAM SỐ CỦA HÀM
1. THAM SỐ VÀ ĐỐI SỐ CỦA HÀM
Tham số:
Là các biến được khai báo ngay khi định nghĩa hàm. Chúng đóng vai trò như những "người nhận" dữ liệu.
Ví dụ:
Khi em viết def xin_chao(ten): thì biến ten chính là tham số.
Đối số:
Là giá trị thực sự mà em truyền vào cho hàm khi gọi hàm đó.
Ví dụ:
Khi em gọi lệnh xin_chao("Minh") thì chữ "Minh" chính là đối số.
Cơ chế truyền giá trị:
Khi gọi hàm, các đối số (giá trị bên ngoài) sẽ được gán lần lượt cho các tham số (biến bên trong) theo đúng thứ tự.
Ví dụ: Có hàm def tong(a, b): Nếu gọi tong(3, 5) thì máy tính sẽ hiểu: tham số a nhận giá trị 3, tham số b nhận giá trị 5.
CÂU HỎI TRẮC NGHIỆM
Câu 1: Các biến được khai báo ngay khi định nghĩa hàm được gọi là gì?
Câu 2: Giá trị thực sự truyền vào khi gọi một hàm được gọi là gì?
Câu 3: Trong câu lệnh def xin_chao(ten):, biến ten đóng vai trò là gì?
Câu 4: Khi gọi hàm, các đối số sẽ được gán cho tham số theo quy tắc nào?
Câu 5: Nếu có hàm def tong(a, b):, khi gọi tong(3, 5) thì biến a nhận giá trị nào?
Câu 6: Điểm khác biệt cơ bản nhất giữa tham số và đối số là gì?
Câu 7: Cho hàm f_dem(msg, sep). Nếu muốn tách chuỗi theo dấu phẩy, đối số sep là gì?
Câu 8: Để hàm in_the(ten, lop) in ra "Minh, 10A1", ta phải gọi hàm thế nào?
2. CÁCH SỬ DỤNG CHƯƠNG TRÌNH CON
Tránh viết lại mã lệnh (Tái sử dụng):
Giúp gom các đoạn lệnh xử lý một công việc lặp đi lặp lại thành một hàm để gọi ra dùng nhiều lần, giúp chương trình có cấu trúc rõ ràng, dễ hiểu.
Chia để trị (Phân chia công việc):
Giúp chia nhỏ một bài toán lớn và phức tạp thành nhiều bài toán nhỏ, từ đó phát huy được tinh thần làm việc nhóm.
Dễ bảo trì và nâng cấp:
Khi dùng hàm, chương trình chính sẽ rất ngắn gọn. Nếu chương trình bị lỗi hoặc cần nâng cấp, em chỉ cần tìm đến đúng hàm đó để chỉnh sửa rất thuận tiện.
CÂU HỎI TRẮC NGHIỆM
Câu 9: Việc gom các đoạn lệnh lặp lại thành một hàm gọi là gì?
Câu 10: Chương trình con giúp cấu trúc của chương trình trở nên thế nào?
Câu 11: Trong Python, chương trình con thường được thiết lập dưới dạng nào?
Câu 12: Tại sao nên sử dụng hàm thay vì viết lại mã lệnh nhiều lần?
Câu 13: Khi muốn thay đổi logic xử lý trong hàm đã được gọi nhiều nơi, ta cần làm gì?
Câu 14: Việc chia nhỏ chương trình thành các hàm (chương trình con) giúp ích gì?
Câu 15: Nếu cần tính diện tích cho 100 hình chữ nhật khác nhau, ta nên làm gì?
Câu 16: Khi thiết lập hàm in_the_hoc_sinh gọi 2 lần với đối số khác nhau, kết quả là gì?
3. THỰC HÀNH: TRUYỀN GIÁ TRỊ CHO ĐỐI SỐ CỦA HÀM
Nhiệm vụ 1: Máy tính tổng linh hoạt
Đề bài:
Thiết lập hàm f_sum(A, b) tính tổng các số của danh sách A theo điều kiện cờ b.
Chương trình Python hoàn chỉnh:
Nhiệm vụ 2: Máy đếm từ thông minh
Đề bài:
Thiết lập hàm f_dem(msg, sep) đếm số lượng từ của một câu dựa vào kí tự tách.
Chương trình Python hoàn chỉnh:
Nhiệm vụ 3: Máy in thẻ học sinh
Đề bài:
Thiết lập hàm in_the_hoc_sinh(ten, lop, truong) in ra khung thẻ học sinh.
Chương trình Python hoàn chỉnh: