CHỦ ĐỀ GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH BÀI 31 Thực hành viết chương trình đơn giản Môn học Tin học lớp 10 Thời gian thực hiện 2 tiết I MỤC TIÊU 1 Về kiến thức Thực hành viết chương trìn[.]
CHỦ ĐỀ: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH BÀI 31: Thực hành viết chương trình đơn giản Môn học: Tin học lớp 10 Thời gian thực hiện: tiết I MỤC TIÊU Về kiến thức - Thực hành viết chương trình đơn giản ngôn ngữ Python - Thực hành bước gỡ rối chương trình cơng cụ degug – thiết lập điểm dừng chạy theo lệnh Về lực 2.1 Năng lực chung - Năng lực tự chủ, tự học: Tự nhận điều chỉnh sai sót, hạn chế thân q trình học tập - Năng lực giao tiếp hợp tác: Học sinh biết lựa chọn hình thức làm việc nhóm với quy mô phù hợp với yêu cầu nhiệm vụ - Năng lực giải vấn đề sáng tạo: Xây dựng hàm dựa chương trình học; sử dụng cấu trúc rẽ nhánh, cấu trúc lặp thường dùng để giải toán cụ thể 2.2 Năng lực tin học (NLc, Nle) - Năng lực C: Hiểu vận dụng phương pháp làm mịn dần, thiết kế modun lập trình; Xác định cấu trúc liệu thích hợp xây dựng thuật toán hiệu để giải vấn đề - Năng lực E: Năng lực hợp tác mơi trường số 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 chăm chỉ, chun cần hồn thành nhiệm vụ II THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU Đối với GV: - Bảng, máy tính, máy chiếu, phiếu học tập, … - SGK, SBT, tài liệu tham khảo Đối với HS: - SGK, bảng nhóm, bút lơng, bút dạ, phấn - Tìm hiểu trước nội dung GV giao nhà chuẩn bị sản phẩm để nộp cho GV trình bày trước lớp III TIẾN TRÌNH DẠY HỌC A HOẠT ĐỘNG MỞ ĐẦU (10’) a Mục tiêu: - Tạo hứng thú cho HS - HS nêu nội dung kiến thức học b Nội dung: - Để viết chương trình máy tính, cần trải qua bước nào? c Sản phẩm: - Câu trả lời học sinh d Tổ chức hoạt động Bước Giao nhiệm vụ học tập - GV nêu câu hỏi - HS lắng nghe, nhận nhiệm vụ Bước Thực nhiệm vụ - HS suy nghĩ trả lời - GV giải đáp thắc mắc, hỗ trợ học sinh Bước Báo cáo, thảo luận - GV gọi em HS trình bày; HS khác lắng nghe, bổ sung Bước Kết luận, nhận định GV tổng hợp câu trả lời học sinh chốt kiến thức: Các bước viết chương trình: Bước Đọc tìm hiểu đề Bước Tìm lựa chọn thuật tốn tối ưu để giải tốn Bước Viết chương trình Bước Kiểm thử gỡ lỗi Bước Đưa chương trình hồn chỉnh GV giới thiệu dẫn dắt vào bài: Các em tìm hiểu cấu trúc câu lệnh, cấu trúc liệu Python Tất kiến thức làm tiền đề cho em lập trình giải tốn ngơn ngữ Python Hôm thực hành viết chương trình đơn giản ngơn ngữ Python thực bước giải toán B HOẠT ĐỘNG THỰC HÀNH (65’) Hoạt động Tìm hiểu nhiệm vụ (15’) a Mục tiêu HS trải qua bước giải tốn máy tính - HS xác định yêu cầu đề, phân tích trường hợp n giải toán cho trường hợp - HS xây dựng thuật toán phân tích số thành số nguyên tố - HS tham khảo Chương trình hồn chỉnh thực toán nhiệm vụ 1, biết ý nghĩa đoạn lệnh - HS sử dụng kĩ thuật điểm dừng để kiểm thử toán với trường hợp n b Nội dung Kiến thức: - Xác định tốn - Xây dựng thuật tốn - Tìm hiểu chương trình - Kiểm thử chương trình Phiếu học tập 1 Một số tự nhiên n kiểu số nào? Với trường hợp, em nêu cách nhận biết Đọc hiểu hướng dẫn, từ rút thuật toán giải toán Đọc hiểu chương trình, tìm hiểu ý nghĩa đoạn lệnh Chạy chương trình, Lấy input tương ứng với trường hợp để kiểm thử toán, tạo điểm dừng(break point) bắt đầu m = m//k để kiểm thử c Sản phẩm: - HS hồn thành tìm hiểu - Chương trình qua kiểm thử d Tổ chức hoạt động HOẠT ĐỘNG CỦA GV – HS SẢN PHẨM Bước Giao nhiệm vụ học tập - GV chia lớp thành nhóm nhóm trả lời câu hỏi mà GV giao Yêu cầu HS nghiên cứu SGK trả lời câu hỏi - HS lắng nghe để hiểu nhận nhiệm vụ Bước Thực nhiệm vụ Dự kiến Bài tập nhóm HS - HS làm việc nhóm - GV hỗ trợ HS HS gặp khó khăn Sản phẩm 1 Một số tự nhiên n Số tự nhiên n có trường kiểu số nào? Với hợp sau: trường hợp, em nêu cách - Là số nguyên tố: chia hết nhận biết cho - Là hợp số: số có thừa số ngun tố trở lên - Khơng nguyên tố không hợp số Đọc hiểu hướng dẫn, từ rút Sản phẩm thuật toán toán Tạo danh sách NT để lưu thừa số nguyên tố số n, sau biện luận Đọc hiểu chương trình, tìm hiểu ý nghĩa đoạn lệnh Chạy chương trình, Lấy input tương ứng với trường hợp để kiểm thử toán, tạo điểm dừng(break point) bắt đầu m = m// k để kiểm thử độ dài danh sách để đưa trường hợp B1: m=n,k=2,NT=[] B2: Trong n >1 + Trong n khơng chia hết cho k cịn tăng k + Đưa k vào danh sách thừa số NT + m=m//k B3: Nếu NT rỗng n Nếu độ dài NT=1 n số nguyên tố Trường hợp cịn lại ta in danh sách có NT Sản phẩm 3:Ý nghĩa đoạn lệnh chương trình Dịng 1:nhập n Dịng 2-4: khởi tạo m,k,NT Dịng 5-9:xây dựng danh sách NT Dòng 10-hết: biện luận độ dài NT để in kết Sản phẩm 4: Bộ input 1: n=0 Bộ input 2:n=1 Bộ input 3:n=11 Bộ input 4:n=12 Với input, thực hành chạy wing personal 8, tạo điểm dừng quan sát biến thiên k,m,n lần chạy Bước Báo cáo, thảo luận - GV tổ chức cho nhóm trình bày sản phẩm nhóm - HS trình bày câu trả lời - Nhóm HS khác quan sát phương án trả lời nhóm bạn, ghi lại, đặt câu hỏi cho nhóm bạn để hiểu câu trả lời, đồng thời nêu ý kiến bổ sung để hoàn thiện câu trả lời - GV quan sát, lắng nghe, ghi (nếu có) Sau nhóm hồn thành báo cáo GV đặt thêm câu hỏi cho HS để hồn thiện kiến thức (nếu sản phẩm HS thiếu) Bước Kết luận, nhận định - GV nhận xét góp ý, chỉnh sửa câu trả lời cho HS - GV chốt kiến thức: GV nhắc lại bước giải tốn máy tính, lưu ý học sinh tinh giản thành bước: Tìm hiểu đề, tìm cách giải, viết chương trình, kiểm thử - HS ghi vào Hoạt động Tìm hiểu nhiệm vụ (15’) a Mục tiêu - HS tìm hiểu chương trình đơn giản sử dụng hàm tự định nghĩa - HS tìm hiểu thêm cấu trúc mở rộng lệnh rẽ nhánh if b Nội dung Phiếu học tập số Biện luận nghiệm phương trình bậc 2: ax2+bx+c=0 với trường hợp a, b, c Tìm hiểu lệnh if lồng cách viết chương trình Nhắc lại cấu trúc hàm python tìm hiểu cách viết sử dụng hàm, gọi hàm lồng chương trình Đưa test kiểm thử chương trình c Sản phẩm (dự kiến sản phẩm HS) - Câu trả lời HS cho yêu cầu mà GV đưa gửi cho GV qua link driver d Tổ chức hoạt động HOẠT ĐỘNG CỦA GV – HS SẢN PHẨM Bước Giao nhiệm vụ học tập - Cuối tiết học trước GV chia lớp thành nhóm yêu cầu HS làm việc theo nhóm nhà hoàn thành phiếu học tập (câu trả lời thể power point/ word/ giấy – câu hỏi số lập trình Python gửi vào link driver cho GV trước ngày diễn học ngày) - HS lắng nghe để hiểu nhận nhiệm vụ Bước Thực nhiệm vụ Bài tập nhóm HS link driver Biện luận nghiệm phương Sản phẩm trình bậc 2: ax2+bx+c=0 với Nếu a=b=c=0 Phương trình có vơ trường hợp a, b, c số nghiệm Nếu a=b=0,c0 Phương trình vơ nghiệm Tìm hiểu lệnh if lồng sử dụng đâu chương trình Nhắc lại cách thiết lập hàm tự định nghĩa python tìm hiểu cách viết sử dụng hàm, gọi hàm lồng chương trình Đưa test kiểm thử chương trình Nếu a=0,b0 phương trình bậc có nghiệm x=-c/a Nếu a0 giải phương trình bậc cách tính delta, biện luận delta để xác định nghiệm phương trình Sản phẩm Cấu trúc lệnh if else: if else: thay if elif else: làm chương trình gọn Trong chương trình hàm GiaiPT1(b,c) GiaiPt2(a,b,c) có sử dụng hàm if lồng để vét hết trường hợp Sản phẩm Cấu trúc hàm python Hàm python định nghĩa từ khóa def, theo sau tên hàm Hàm có khơng có tham số Khối lệnh mơ tả hàm viết sau dấu “:” viết lùi vào, thẳng hàng Hàm có khơng có giá trị trả lại sau từ khóa return Trong chương trình có sử dụng hàm NhapDL(): nhập số a,b,c GiaiPT1(b,c):giải phương trình bậc bx+c=0 GiaiPT2(a,b,c): giải phương trình bậc hai ax2+bx+c=0 Trong hàm GiaiPT2 gọi hàm GiaiPT1 Sản phầm Bộ input1: (1,2,3) Bộ input2: (1,2,1) Bộ input3: (1,3,2) Bộ input4: (0,2,3) Bộ input5: (0,0,3) Bộ input6: (0,0,0) Chạy kiểm thử chương trình với input, sai quay lại sửa lỗi Bước Báo cáo, thảo luận - GV tổ chức cho nhóm trình bày sản phẩm nhóm HS lên trình bày sản phẩm nhóm - HS trình bày câu trả lời - Nhóm HS khác quan sát phương án trả lời nhóm bạn, ghi lại, đặt câu hỏi cho nhóm bạn để hiểu câu trả lời, đồng thời nêu ý kiến bổ sung để hoàn thiện câu trả lời - GV quan sát, lắng nghe, ghi (nếu có) Sau nhóm hồn thành báo cáo GV đặt thêm câu hỏi cho HS để hoàn thiện kiến thức (nếu sản phẩm HS thiếu) Bước Kết luận, nhận định - GV nhận xét góp ý, chỉnh sửa câu trả lời cho HS - GV chốt kiến thức: - HS ghi vào C HOẠT ĐỘNG LUYỆN TẬP (25’) a Mục tiêu - HS vận dụng kiến thức học để xây dựng chương trình nguồn giải tốn nêu phần luyện tập SGK trang 152 b Nội dung - Bài tập luyện tập SGk trang 152 c Sản phẩm - Chương trình nguồn giải tốn d Tổ chức hoạt động Bước Giao nhiệm vụ học tập GV yêu cầu nhóm HS thảo luận làm trang 152 SGK GV gợi ý: - Sử dụng vòng lặp while, điều kiện khơng cịn báo lỗi nhập lại Bước Thực nhiệm vụ HS chia nhóm thực hành máy Bước Báo cáo, thảo luận GV xem nhóm làm, cho điểm nhóm làm tốt, hướng dẫn nhóm chưa làm Bước Kết luận, nhận định GV cho chiếu nhóm làm cho nhóm khác tham khảo code, sau chiếu code nguồn chuẩn D HOẠT ĐỘNG VẬN DỤNG (5’) a Mục tiêu - HS củng cố chương trình sử dụng hàm, xây dựng hàm kiểm tra năm nhuận hàm tìm UCLN - Viết thành chương trình hồn chỉnh kiểm thử trường hợp xảy b Nội dung - Bài tập vận dụng SGK trang 152 c Sản phẩm - Chương trình nguồn giải tập vận dụng SGk trang 152 d Tổ chức hoạt động Bước Giao nhiệm vụ học tập GV yêu cầu nhóm HS nhà thảo luận làm tập vận dụng trang 152 SGK Bước Thực nhiệm vụ HS thảo luận trả lời câu hỏi Bước Báo cáo, thảo luận Các nhóm HS nộp tập link Drive Bước Kết luận, nhận định GV nhận xét câu trả lời đưa code tham khảo buổi học ... kiến thức làm tiền đề cho em lập trình giải tốn ngơn ngữ Python Hơm thực hành viết chương trình đơn giản ngôn ngữ Python thực bước giải toán B HOẠT ĐỘNG THỰC HÀNH (65’) Hoạt động Tìm hiểu nhiệm... lưu ý học sinh tinh giản thành bước: Tìm hiểu đề, tìm cách giải, viết chương trình, kiểm thử - HS ghi vào Hoạt động Tìm hiểu nhiệm vụ (15’) a Mục tiêu - HS tìm hiểu chương trình đơn giản sử dụng... sử dụng đâu chương trình Nhắc lại cách thiết lập hàm tự định nghĩa python tìm hiểu cách viết sử dụng hàm, gọi hàm lồng chương trình Đưa test kiểm thử chương trình Nếu a=0,b0 phương trình bậc