CHỦ ĐỂ 5 GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH BÀI 27 THAM SỐ CỦA HÀM Môn học Tin học lớp 10 Thời gian thực hiện 1LT+2TH I MỤC TIÊU 1 Về kiến thức Biết cách thiết lập các tham số của hàm Biết[.]
CHỦ ĐỂ 5: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH BÀI 27: THAM SỐ CỦA HÀM Môn học: Tin học lớp 10 Thời gian thực hiện: 1LT+2TH I MỤC TIÊU Về kiến thức - Biết cách thiết lập tham số hàm - Biết cách truyền giá trị thông qua đối số hàm - Biết viết chương trình có sử dụng chương trình Về lực 2.1 Năng lực chung - Năng lực tự chủ tự học - Năng lực giao tiếp hợp tác - Năng lực giải vấn đề 2.2 Năng lực tin học - Thực khởi tạo hàm tự định nghĩa có tham số 2.3 Về phẩm chất - Hình thành ý thức trách nhiệm, tính cẩn thận làm việc nhóm, phẩm chất làm việc chăm chỉ, chuyên cần để hoàn thành nhiệm vụ II THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU Đối với GV: - Chuẩn bị số chương trình có lỗi test để sửa lỗi chạy chương trình - Phịng thực hành tin học, máy chiếu Đối với HS: - SGK, ghi chép - Chuẩn bị Một số chương trình trình học chạy bị lỗi số lỗi thường mắc phải học chạy chương trình để thảo luận nhóm hỏi gv giải III TIẾN TRÌNH DẠY HỌC A HOẠT ĐỘNG MỞ ĐẦU (5’) a Mục tiêu: - Gợi mở cho HS biết hai khái niệm tham số, đối số Hai khái niệm dễ bị nhầm lẫn b Nội dung: Quan sát đoạn lệnh sau cho biết khác tham số (parameter) đối số (argument) c Sản phẩm: - Hs trả lời được: a, b, c hàm f_sum tham số; Trong lời gọi hàm f_sum(10,x,y) 10, x, y giá trị truyền vào hàm, đối số d Tổ chức hoạt động Bước Giao nhiệm vụ học tập -GV yêu cầu tất HS quan sát đoạn lệnh suy nghĩ nêu khác def f_sum(a,b,c) f_sum(10,x,y) Bước Thực nhiệm vụ + HS đọc ví dụ, thảo luận nhóm đơi để tham số, đối số ví dụ Bước Báo cáo, thảo luận + HS treo bảng phụ kết qủa nhóm lên bảng + Các nhóm trình bày nhóm mình, nhóm khác nhận xét bổ sung Bước Kết luận, nhận định + GV chốt lại khái niệm mở đầu tham số hàm đối số B HOẠT ĐỘNG HÌNH THÀNH KIẾN THỨC (30’) Hoạt động Phân biệt tham số đối số a Mục tiêu: - HS phân biệt tham số đối số hàm - HS hiểu cách truyền giá trị vào hàm gọi hàm b Nội dung: - Tìm hiểu cách liệu truyền qua tham số vào hàm c Sản phẩm: - Hs trả lời được: +Tham số biến ghi khai báo hàm.Chú ý hàm có khơng có tham số + Khi gọi hàm, giả trị truyền vào hàm thơng qua đối số.Như hiểu đối số giá trị ghi gọi hàm + Một hàm khai báo có tham số, gọi hàm có hai đối số khơng? + Giả sử hàm f có hai tham số x, y khai báo hàm trả lại giá trị x+2y Lời gọi hàm f(10,a) có lỗi hay không? d Tổ chức hoạt động HOẠT ĐỘNG CỦA GV – HS DỰ KIẾN SẢN PHẨM Bước Giao nhiệm vụ học tập Sản phẩm - Gv: Yêu cầu học sinh quan sát đoạn chương - Với dòng : HS trả lời trình hàm Python Nêu rõ tham số được: Hàm f( ) định hàm nghĩa với tham số a, b, c Hàm có trả lại giá trị a+b+c - Dòng 3: Hàm f( )được gọi với giá trị cụ thể 1, 2, – gọi đối số - Dòng 6: Hàm f( ) gọi vơi biến x, y, z (đã gán giá trị dòng 5)- biến đối số - Dòng 10: Hàm f( ) Bước Thực nhiệm vụ gọi với biến a, b, c khơng xác + HS đọc ví dụ, thảo luận nhóm để định giá trị nên lời gọi hàm tham số, đối số ví dụ f(a,b,c) báo lỗi khơng xác + GV: Quan sát hoạt động nhóm, hỗ trợ HS định giá trị a, b, c Bước Báo cáo, thảo luận - Sản phẩm + HS treo bảng phụ kết qủa nhóm lên + Một hàm khai báo có bảng tham số, gọi + Các nhóm trình bày nhóm mình, hàm khơng có đối số nhóm khác nhận xét bổ sung Vì số lượng giá trị truyền + GV theo dõi hỗ trợ nhóm: chiếu chương vào hàm phải với số tham trình hàm cho học sinh dễ quan sát số khai báo hàm Bước Kết luận, nhận định + Giả sử hàm f có hai tham số + GV chốt lại khái niệm tham số hàm đối x, y khai báo hàm trả lại số - Tham số (parameter) hàm định nghĩa giá trị x+2y Lời gọi hàm f(10,a) có lỗi tham số a khai báo hàm dùng biến định truyền vào chưa có giá trị nghĩa hàm Chú ý: hàm khơng có tham số - Đối số (argument) giá trị truyền vào gọi hàm Số lượng giá trị truyền vào hàm với số tham số khai báo hàm Hoạt động Khi nên sử dụng chương trình con? a Mục tiêu - HS biết thực cách tạo sử dụng hàm (hay cịn gọi chương trình con) chương trình Cụ thể: - Một hàm sử dụng nhiều lần chương trình - Một chương trình lớn có nhiều lời gọi hàm gọi chương trình có cấu trúc Một chương trình có cấu trúc dễ hiểu tiết kiệm câu lệnh - Chương trình có cấu trúc dễ dàng nâng cấp, mở rộng, chỉnh sửa c Sản phẩm: - Hs thực tạo hàm sử dụng hàm ví dụ d Tổ chức hoạt động HOẠT ĐỘNG CỦA GV – DỰ KIẾN SẢN PHẨM HS Bước Giao nhiệm vụ học Sản phẩm 1: Chương trình hồn chỉnh tập Gv: u cầu HS viết chương trình giải tốn sau: - Ví dụ 1: Viết chương trình u cầu nhập số tự nhiên n từ bàn phím in số nguyên tố nhỏ n hình - Ví dụ 2: Cho trước dãy số B, C, chương trình cần tính tổng số hạng Sản phẩm dương dãy Hãy viết hàm tongduong(A) để tính tổng số hạng lớn dãy A Chương trình gọi hàm tongduong(A) - Rút lợi ích viết chương trình lớn có sử dụng chương trình Bước Thực nhiệm vụ + HS đọc ví dụ, thảo luận nhóm để viết chương trình + HS vận dụng chương trình chương trình + GV: Quan sát hoạt động nhóm, hỗ trợ HS Bước Báo cáo, thảo luận + HS treo bảng phụ kết qủa nhóm lên bảng + Các nhóm trình bày nhóm mình, nhóm khác nhận xét bổ sung + GV theo dõi hỗ trợ nhóm: chiếu chương trình ví dụ cho học sinh dễ quan sát Bước Kết luận, nhận định - Ghi điểm tốt cho nhóm làm tốt - GV chốt kiến thức: +Sử dụng chương trình giúp phân chia việc giải toán lớn thành giải toán nhỏ phát huy tinh thần Sản phẩm 3: Các lợi ích viết chương trình lớn có sử dụng chương trình + Sử dụng chương trình giúp phân chia việc giải toán lớn thành giải tốn nhỏ + Chương trình có cấu trúc rõ ràng hơn, dễ hiểu Nếu cần hiệu chỉnh, phát triển nâng cấp thuận tiện làm việc nhóm + Chương trình có cấu trúc rõ ràng hơn, dễ hiểu Nếu cần hiệu chỉnh, phát triển nâng cấp thuận tiện Hoạt động Câu hỏi tập củng cố (10’) a Mục tiêu - Thực hành lập trình có sử dụng hàm b Nội dung - Sử dụng hàm prime, em viết chương trình in số nguyên tố khoảng từ m đến n Với m, n hai số tự nhiên 1< m < n c Sản phẩm: HOẠT ĐỘNG CỦA GV – HS Bước Giao nhiệm vụ học tập Sử dụng hàm prime, em viết chương trình in số nguyên tố khoảng từ m đến n Với m, n hai số tự nhiên 1< m < n DỰ KIẾN SẢN PHẨM Sản phẩm def prime(n): c=0 k=1 While k0: S=S+x return S Chương trình 2: Chương trình sau: def f_dem(msg,sep): xlist=msg.split(sep) return len(xlist) Chương trình 3: def merge_str(S1,S2): S=”” l1=len(S1) l2=len(S2) l=min(l1,l2) for i in range(l): S=S+S[i]+S2[i] if l1