1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo án môn Tin học lớp 10 sách Kết nối tri thức: Bài 30

5 8 1

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 540,36 KB

Nội dung

Giáo án môn Tin học lớp 10 sách Kết nối tri thức: Bài 30 được biên soạn với mục tiêu nhằm giúp học sinh nắm được các phép toán bit; biết được một vài phương pháp đơn giản kiểm thử chương trình; biết được một vài cách gỡ lỗi đơn giản một chương trình;... Mời các bạn cùng tham khảo!

BÀI 30: KIỂM THỬ VÀ GỠ LỖI CHƯƠNG TRÌNH Mơn học: Tin Học; Lớp: 10 Thời gian thực hiện: tiết I MỤC TIÊU Kiến thức: ● Biết vài phương pháp đơn giản kiểm thử chương trình ● Biết vài cách gỡ lỗi đơn giản chương trình Kỹ năng: - Năng lực tự chủ tự học - Năng lực giao tiếp hợp tác - Năng lực sáng tạo giải vấn đề Phẩm chất: Nghiêm túc, tập trung, tích cực chủ động II THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU Sgk, Sbt, giáo án III TIẾN TRÌNH DẠY HỌC HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU) - Mục tiêu: Tạo hứng thú học tập cho học sinh - Nội dung: Hs dựa vào hiểu biết để trả lời câu hỏi - Sản phẩm: Từ yêu cầu Hs vận dụng kiến thức để trả lời câu hỏi GV đưa - Tổ chức thực hiện: GV giới thiệu dẫn dắt vào ? Bài học trước em biết khái niệm lỗi ngoại lệ chạy chương trình Python Tuy nhiên, chương trình chạy khơng có lỗi ngoại lệ (chương trình khơng bị dừng) khơng có nghĩa chương trình khơng có lỗi Thậm chí "lỗi" không tường minh (các lỗi gọi bug) khó phát khó sửa Theo em, làm để kiểm tra (test) gỡ lỗi (debug) chương trình? Mơi trường lập trình có cơng cụ hỗ trợ việc khơng? HS: trả lời câu hỏi HÌNH THÀNH KIẾN THỨC MỚI Hoạt động 1: Tìm hiểu phép tốn bit - Mục Tiêu: + Nắm phép toán bit - Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu GV - Sản phẩm: Hs hoàn thành tìm hiều kiến thức - Tổ chức thực hiện: Hoạt động giáo viên Sản phẩm dự kiến học sinh MỘT VÀI PHƯƠNG PHÁP KIỂM THỬ CHƯƠNG * Bước 1: Chuyển giao TRÌNH nhiệm vụ: Có nhiều phương pháp công cụ khác để kiểm thử GV: Nêu đặt câu hỏi chương trình Các cơng cụ khơng có mục đích tìm Đọc thảo luận nhóm lỗi (hay bug) chương trình mà cịn có tác dụng phịng phương pháp, cơng cụ sau ngừa ngăn chặn lỗi phát sinh tiếp tương lai để biết chức năng, tác dụng công cụ a) Quan sát mã lỗi Runtime bắt lỗi ngoại lệ Nếu chương trình có lỗi Runtime (tức chạy bị công việc kiềm thừ chương dừng lại), cần quan sát mã lỗi (mã lỗi ngoại lệ) để kiểm tra trình vị trí dịng lệnh sinh lỗi Từ phân tích, tìm sửa lỗi HS: Thảo luận, trả lời b) Kiểm thử chương trình với liệu test * Bước 2: Thực Chương trình cần thử với số liệu test nhiệm vụ: gồm đầu vào tiêu biểu phụ thuộc đặc thù toán kết + HS: Suy nghĩ, tham đầu biết trước Các test có đầu vào theo khảo sgk trả lời câu hỏi Kế hoạch dạy mơn Tin học 10 – Chương trình sách KNTT Sản phẩm dự kiến Hoạt động giáo viên học sinh + GV: quan sát trợ giúp cặp * Bước 3: Báo cáo, thảo luận: + HS: Lắng nghe, ghi chú, HS phát biểu lại tính chất + Các nhóm nhận xét, bổ sung cho * Bước 4: Kết luận, nhận định: GV ❖ xác hóa gọi học sinh nhắc lại kiến thức tiêu chí khác độ lớn tính đa dạng liệu Cần ý số điểm sau: - Cần có nhiều test (theo tiêu chí khác độ lớn, tính đa dạng liệu ) - Cần có test ngẫu nhiên Việc sinh ngẫu nhiên liệu đầu vào miền xác định chương trình làm tăng khả tìm lỗi có - Cần có test liệu vùng biên Ví dụ liệu đầu vào cặp (x, y) xác định miền ≤ x, y ≤ Khi cần kiểm tra chương trình với liệu biên (0; 0) (0, 1) (1; 0) (1; 1) Thực tế cho thấy thường phát sinh lỗi vùng biên lân cận biên Một ví dụ khác liệu biên cần tìm test với n giá trị (𝑥1, 𝑥2, , …, 𝑥𝑛, ) lớn (vùng cận biên lớn) c) In thông số trung gian Bổ sung vào dòng lệnh print() để in biến trung gian, qua kiểm tra quy trình hay thuật tốn viết có khơng Giả sử chương trình có đầu vào (x1, x2, …, xn), đầu (a1, a2, …, am) có sử dụng biến trung gian (y1, y2, …, yk) Khi với test đầu vào, bổ sung vào dịng lệnh chương trình để in giá trị trung gian: (x1, x2, …, xn), (y1, y2, …, yk), (a1, a2, …, am) Thông qua giá trị trung gian trình thực chương trình, kết cuối có lỗi dễ tìm lỗi d) Sử dụng cơng cụ break point (điểm dừng) Công cụ break point cho phép tạo “điểm dừng” bên chương trình Khi chạy, chương trình tạm dừng lại “điểm dừng” cho phép người kiểm thử quan sát thơng tin khác bên chương trình, qua kiểm tra tính đắn chương trình Trên thực tế sử dụng phương pháp điểm dừng thường kết hợp với phương pháp in giá trị trung gian hiệu để kiểm thử chương trình Một số ghi nhớ: ● Sử dụng công cụ in biến trung gian ● Sử dụng công cụ sinh liệu test ● Sử dụng công cụ điểm dừng phần mềm soạn thảo lập trình ● Quan sát mã lỗi chương trình phát sinh Hoạt động 2: Ví dụ minh họa a) Mục tiêu: Nắm cách gỡ lỗi chương trình b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu GV c) Sản phẩm: HS hồn thành tìm hiểu kiến thức d) Tổ chức thực hiện: Kế hoạch dạy môn Tin học 10 – Chương trình sách KNTT Sản phẩm dự kiến VÍ DỤ MINH HỌA Xét ví dụ sau: Nhập từ bàn phím hai số tự nhiên m, n, tính ƯCLN hai số Gọi gcd (m, n) ƯCLN hai số tự nhiên m, n Thuật toán toán dựa toán sau: (1) gcd(m, m) = m (2) Nếu n > m gcd(m, n) = gcd(m, n - m) (3) Nếu n < m gcd(m, n) = gcd(m - n, n) Phần chương trình vịng lặp while, vòng lặp kết thúc m = n Chương trình sau: Hoạt động giáo viên học sinh * Bước 1: Chuyển giao nhiệm vụ: GV: HS: Thảo luận, trả lời HS: Lấy ví dụ thực tế * Bước 2: Thực nhiệm vụ: + HS: Suy nghĩ, tham khảo sgk trả lời câu hỏi + GV: quan sát trợ giúp cặp * Bước 3: Báo cáo, thảo luận: + HS: Lắng nghe, ghi chú, HS phát biểu lại tính chất + Các nhóm nhận xét, bổ sung cho * Bước 4: Kết luận, nhận định: GV xác hóa gọi học sinh nhắc lại Chúng ta tiến hành kiểm thử chương trình kiến thức Cần tập trung kiểm tra kĩ khối lệnh lệnh lặp while Cách 1: In giá trị trung gian để kiểm sốt chương trình Bổ sung biến k hai lệnh print() vào chương trình mơ tả sau: Kết thực chương trình sau: Bổ sung thêm biến k hai lệnh print() để in giá trị trung gian k,m,n Cách 2: Sử dụng công cụ tạo điểm dừng phần Quan sát thay đổi biến k, m, n mềm soạn thảo lập trình trình thực chương trình để Kế hoạch dạy mơn Tin học 10 – Chương trình sách KNTT Sản phẩm dự kiến Hoạt động giáo viên học sinh Thiết lập điểm dừng dịng chương trình phát lỗi (nếu có), đồng thời hiểu sau Đây vị trí bắt đầu chuẩn bị vào vịng lỗi tìm cách sửa lỗi lặp Sửa lại Thiết lập điểm dừng dịng chương trình, vị trí bắt đầu vịng lặp lệnh while Khi chạy chương trình dừng lại trước vòng lặp, ghi lại giá trị m, n vào bảng bảng sau Khi kết thúc hết vịng lặp kết chương trình giá trị m Kế t Vịng lặp m n qu ả 1 6 4 Kết thúc vòng lặp 4 ⇨ Cả hai cách để kiểm soát lỗi in giá trị trung gian thiết lập điểm dừng hiệu HOẠT ĐỘNG LUYỆN TẬP a Mục tiêu: Củng cố, luyện tập kiến thức vừa học b Nội dung: HS đọc SGK làm tập c Sản phẩm: Bài làm học sinh, kĩ giải nhiệm vụ học tập d Tổ chức thực hiện: Gv Cho HS nhắc lại KT: Hs: Nhắc lại vấn đề học Chương trình em chạy phát sinh lỗi ngoại lệ ZeroDivisionError Đó lỗi em xử lý lỗi nào? Kế hoạch dạy mơn Tin học 10 – Chương trình sách KNTT Chương trình sau có lỗi khơng? Nếu có tìm sửa lỗi m = input ( “ Nhập số tự nhiên m: “) n = input ( “ Nhập số tự nhiên n: “) print ( “ Tổng hai số nhập là:” ,m+n) HOẠT ĐỘNG VẬN DỤNG a Mục tiêu: Vận dụng kiến thức vừa học vấn đề học tập thực tiễn b Nội dung: c Sản phẩm: HS vận dụng kiến thức vào giải nhiệm vụ đặt d Tổ chức thực hiện: Gv đưa câu hỏi nhà: Chương trình sau có chức xếp dãy số cho trước Hãy kiểm tra xem chương trình có lỗi khơng? Nếu có tìm sửa lỗi A = [10, 1, 5, 2, 8, 0, 4] for i in range ( len(A)-1): j=i while j > and A[ j ] < A[ j – 1]: A[ j ], A[ j – 1] = A[ j – 1], A[ j ] j=j–1 print(A) Để kiểm thử chương trình, việc kiểm tra thơng qua liệu test có bảo đảm tìm hết lỗi chương trình hay khơng? Vì sao? Hướng dẫn học sinh tự học: - Hướng dẫn học cũ: - Hướng dẫn chuẩn bị mới: Kế hoạch dạy môn Tin học 10 – Chương trình sách KNTT ... trình hay khơng? Vì sao? Hướng dẫn học sinh tự học: - Hướng dẫn học cũ: - Hướng dẫn chuẩn bị mới: Kế hoạch dạy môn Tin học 10 – Chương trình sách KNTT ... soạn thảo lập trình trình thực chương trình để Kế hoạch dạy môn Tin học 10 – Chương trình sách KNTT Sản phẩm dự kiến Hoạt động giáo viên học sinh Thiết lập điểm dừng dịng chương trình phát lỗi (nếu... tập kiến thức vừa học b Nội dung: HS đọc SGK làm tập c Sản phẩm: Bài làm học sinh, kĩ giải nhiệm vụ học tập d Tổ chức thực hiện: Gv Cho HS nhắc lại KT: Hs: Nhắc lại vấn đề học Chương trình em

Ngày đăng: 01/09/2022, 00:02