Rõ nét về file powerpoint trình chiếu. => Xem thêm
Ngày soạn:…/…/…
Ngày dạy:…/…/…
BÀI 15: GỠ LỖI
Sau bài học này, HS sẽ:
Năng lực chung:
Năng lực riêng:
III. TIẾN TRÌNH DẠY HỌC
Bước 1: GV chuyển giao nhiệm vụ học tập
- GV yêu cầu HS thảo luận nhóm đôi.
- GV đưa ra tình huống:
An: Chúng ta đã tạo ra một chương trình máy tính trong Bài 14 và thế là tớ đã biết lập trình.
Khoa: Chưa xong đâu, chúng ta cần phải thực hiện một việc nữa, đó là gỡ lỗi.
An: Gỡ lỗi là làm những gì? Bạn hãy hướng dẫn cụ thể hơn cho tớ nhé.
- GV đặt câu hỏi: Em hãy giúp Khoa trả lời câu hỏi của bạn An.
- GV yêu cầu các nhóm thảo luận và trình bày câu trả lời của mình.
Bước 2: HS thực hiện nhiệm vụ học tập
- Các nhóm HS đọc tình huống và tiếp nhận yêu cầu.
- Các nhóm thảo luận.
- GV hướng dẫn, hỗ trợ HS (nếu cần thiết).
Bước 3: Báo cáo kết quả hoạt động và thảo luận
- HS trả lời các câu hỏi của GV: Gỡ lỗi bao gồm chạy thử, tìm lỗi và sửa được lỗi cho chương trình.
- GV yêu cầu HS khác lắng nghe, nhận xét, bổ sung.
Bước 4: Đánh giá kết quả, thực hiện nhiệm vụ học tập
- GV ghi nhận câu trả lời của HS, không chốt đáp án.
- GV dẫn dắt HS vào bài học: Trong thực tế, khi chạy chương trình có thể sẽ gặp một số lỗi không mong muốn, vì vậy gỡ lỗi là bước làm quan trọng trong quá trình tạo chương trình? Vậy làm thế nào để phát hiện hiện lỗi và sửa lỗi? Để trả lời cho câu hỏi này, chúng ta cùng đi tìm hiểu bài học hôm nay – Bài 15: Gỡ lỗi.
Hoạt động 1: Kiểm thử và phân loại lỗi.
- HS chạy thử và phát hiện tình huống chương trình máy tính thực hiện không đúng với kịch bản.
- HS làm quen được với khái niệm kiểm thử.
- HS phân biệt được lỗi cú pháp và lỗi lôgic.
HOẠT ĐỘNG CỦA GV - HS | DỰ KIẾN SẢN PHẨM |
Bước 1: GV chuyển giao nhiệm vụ học tập - GV chia lớp thành các nhóm (3 - 4 HS). - GV dẫn dắt HS vào Hoạt động 1 tr.86 SGK: Trong trò chơi Đoán số ở Bài 14, ai đoán đúng số bí mật với ít lần đoán hơn sẽ là người thắng cuộc. Ở chương trình trong Hình 15.1, biến số lần đoán được bổ sung để đếm số lần người chơi đoán và thông báo giá trị này khi người chơi đoán đúng số bí mật. Trước khi chia sẻ trò chơi của minh, em quyết định kiểm tra xem trò chơi có hoạt động tốt không. Hãy cho biết kết quả của việc kiểm tra đó bằng cách mô tả tình huống chương trình chạy không đúng kịch bản (nếu có). - Các nhóm HS thảo luận về tình huống chương trình thực hiện không đúng với kịch bản. - GV lưu ý HS chỉ phát hiện lỗi (nếu có) và mô tả tình huống gây ra lỗi, càng cụ thể càng tốt, không yêu cầu sửa lỗi. - GV yêu cầu HS đọc thông tin SGK trang 86 tiếp thu kiến thức mới: kiểm thử, loại bỏ lỗi là một phần của công việc lập trình. - GV đặt câu hỏi Hoạt động 2 tr.86 SGK, yêu cầu cá nhân HS trả lời: Em hãy cho biết, chương trình đã cho trong Hình 15.1 không hoạt động được hay nó có hoạt động nhưng đã thực hiện không đúng với kịch bản. - GV dẫn dắt, yêu cầu HS đọc thông tin SGK tr. 87 tiếp thu kiến thức mới: lỗi cú pháp, lỗi lôgic. - GV yêu cầu HS đọc và ghi nhớ kiến thức trong phần ghi nhớ. - GV cho HS đọc và trả lời nhanh Câu hỏi SGK trang 87 để củng cố kiến thức: Chọn phát biểu đúng nhất về hoạt động gỡ lỗi. A. Gỡ lỗi là phát hiện và loại bỏ lỗi. Trong lập trình, không nhất thiết phải gỡ lỗi. B. Gỡ lỗi là chạy thử chương trình để phát hiện lỗi. Trong lập trình, không nhất thiết phải gỡ lỗi. C. Gỡ lỗi là chạy thử chương trình để phát hiện lỗi. Gỡ lỗi là một phần quan trọng của lập trình. D. Gỡ lỗi là phát hiện và loại bỏ lỗi. Gỡ lội là một phần quan trọng của lập trình. Bước 2: HS thực hiện nhiệm vụ học tập - Nhóm HS thảo luận tình huống chương trình thực hiện không đúng với kịch bản. - Cá nhân HS trả lời câu hỏi Hoạt động 2 tr.86 SGK. - HS đọc thông tin mục 1 SGK và trả lời câu hỏi. - GV hướng dẫn, theo dõi, hỗ trợ HS (nếu cần thiết). Bước 3: Báo cáo kết quả hoạt động và thảo luận - Nhóm HS trình bày kết quả thảo luận Hoạt động 1 tr.86 SGK. - Cá nhân HS trả lời câu hỏi Hoạt động 2 tr.86 SGK. - HS trình bày khái niệm kiểm thử, phân loại lỗi trong khi chương trình máy tính. - GV mời đại diện HS khác nhận xét, bổ sung. Bước 4: Đánh giá kết quả, thực hiện nhiệm vụ học tập - GV đánh giá, nhận xét, chuẩn kiến thức. - GV chuyển sang nội dung mới. | 1. Kiểm thử và phân loại lỗi - Hoạt động 1: Câu trả lời dự kiến: Chương trình không hiển thị đúng số lần đoán. Cụ thể là giá trị hiển thị luôn kém số lần đoán thực tế 1 đơn vị. - Hoạt động 2: Chương trình chạy được nhưng số lần đoán được hiển thị kém số lần đoán thực tế 1 đơn vị. - Hoạt động đọc: a) Kiểm thử + Việc chạy thử chương trình để kiểm tra (còn gọi là kiểm thử) nhằm phát hiện những tình huống bất thường (lỗi) khi thực hiện chương trình. + Các lỗi cần được loại bỏ trước khi chương trình được coi là sản phẩm hoàn chỉnh và có thể chia sẻ với người khác. → Cần phải chạy thử chương trình để phát hiện và loại bỏ lỗi. b) Phân loại lỗi - Lỗi cú pháp là lỗi viết câu lệnh sai quy tắc, làm cho chương trình không hoạt động. - Lỗi lôgic là lỗi câu lệnh, tuy được viết đúng quy tắc nhưng thực hiện sai so với kịch bản. - Hoạt động củng cố kiến thức: Đáp án D. |
Hoạt động 2: Phát hiện lỗi và sửa lỗi lôgic.
- HS phán đoán được nguyên nhân gây ra lỗi lôgic và tìm phương án sửa lỗi đó.
- HS mô tả được hai phương pháp phát hiện lỗi: 1) Dựa vào tư duy lôgic về thứ tự thực hiện các câu lệnh để phát hiện lỗi; 2) Dựa vào thực nghiệm, phát hiện lỗi bằng cách loại trừ những phần chương trình chạy đúng.
- HS sửa được một lỗi cụ thể khi đã biết vị trí và nguyên nhân gây ra lỗi.
HOẠT ĐỘNG CỦA GV - HS | DỰ KIẾN SẢN PHẨM |
Bước 1: GV chuyển giao nhiệm vụ học tập - GV dẫn dắt HS vào Hoạt động 3 tr.87 SGK: Xét tình huống máy tính hiển thị số lần đoán không đúng với số lần đoán thực tế của người chơi. Em hãy trả lời các câu hỏi: 1. Theo kịch bản, biến số lần đoán sẽ thay đổi trong tình huống nào? 2. Những khối lệnh nào làm thay đổi biến số lần đoán? 3. Có điều gì khác nhau giữa kịch bản và những khối lệnh tương ứng? - GV hướng dẫn, gợi ý HS sửa lỗi chương trình trên. Ví dụ: thêm lệnh (4a) giống như lệnh (9) vào sau lệnh (4). - GV dẫn dắt, yêu cầu HS đọc thông tin SGK tr. 87 - 88, quan sát Hình 15.2 tiếp thu kiến thức mới: các cách phát hiện lỗi lôgic, sửa lỗi. - GV yêu cầu HS đọc và ghi nhớ kiến thức trong phần ghi nhớ. - GV cho HS đọc và trả lời nhanh Câu hỏi SGK trang 89, quan sát Hình 15.3 để củng cố kiến thức: Em hãy gỡ lỗi đoạn chương trình xác định một số n được nhập từ bàn phím là số chẵn hay số lẻ được cho trong Hình 15.3. Hình 15.3. Chương trình xác định một số là chẵn hay lẻ Bước 2: HS thực hiện nhiệm vụ học tập - HS tiếp nhận nhiệm vụ, đọc thông tin mục 2, quan sát Hình 15.2, 15.3 và trả lời câu hỏi. - GV hướng dẫn, theo dõi, hỗ trợ HS (nếu cần thiết). Bước 3: Báo cáo kết quả hoạt động và thảo luận - GV mời đại diện một HS trả lời câu hỏi Hoạt động 3 tr.87 và câu hỏi củng cố tr.89 SGK. - HS trình bày về hai phương pháp phát hiện lỗi và sửa lỗi. - Các HS khác trình bày kết quả bài thực hành sau khi thực hành xong. - GV mời đại diện HS khác nhận xét, bổ sung. Bước 4: Đánh giá kết quả, thực hiện nhiệm vụ học tập - GV đánh giá, nhận xét, chuẩn kiến thức. - GV chuyển sang hoạt động mới. | 2. Phát hiện lỗi và sửa lỗi lôgic - Hoạt động 3 Câu trả lời dự kiến: 1. Biến số lần đoán thay đổi sau mỗi lần đoán. Cụ thể là các lệnh (4), (7) và (8). 2. Lệnh (2) gán giá trị ban đầu cho số lần đoán và lệnh (9) tăng số lần đoán 1 đơn vị sau (7) và (8). 3. Có lệnh tương tự như (9) sau lần đoán đầu tiên của người chơi ở lệnh (4). - Hoạt động đọc a) Phát hiện lỗi lôgic 1) Dựa vào tư duy lôgic về thứ tự thực hiện các câu lệnh để phát hiện lỗi. 2) Dựa vào thực nghiệm, phát hiện lỗi bằng cách loại trừ những phần chương trình chạy đúng. b) Sửa lỗi - Khi đã biết vị trí câu lệnh xảy ra lỗi trong chương trình và cách thức câu lệnh tạo ra lỗi → có thể đưa ra những cách sửa lỗi phù hợp với yêu cầu. - Hoạt động củng cố kiến thức: + Lỗi được phát hiện trong câu lệnh rẽ nhánh, biểu thức lôgic trong câu lệnh kiểm tra n có phải số chẵn hay không nhưng câu lệnh hiển thị ghi sai. + Có thể sửa lỗi bằng cách đổi vị trí hai câu lệnh hiển thị hoặc thay biểu thức điều kiện bằng biểu thức kiểm tra n có phải số lẻ hay không. hoặc - Ghi nhớ: Hai phương pháp phổ biến để phát hiện lỗi lôgic trong chương trình: + Tập trung vào những khối lệnh trực tiếp gây ra lỗi và những khối lệnh liên quan lôgic đến nó theo các cấu trúc điều khiển. + Chạy chương trình từng bước, kết hợp theo dõi sự thay đổi của các biến, các giá trị đầu ra và so sánh với các giá trị tính được theo cách thủ công. |
Hoạt động 3: Thực hành: Gỡ lỗi.
HOẠT ĐỘNG CỦA GV - HS | DỰ KIẾN SẢN PHẨM |
Bước 1: GV chuyển giao nhiệm vụ học tập - GV yêu cầu HS đọc thông tin SGK trang 89 - 90 và xác định nhiệm vụ và hướng dẫn thực hiện. - HS đọc SGK, xác định được yêu cầu của bài thực hành: Nhiệm vụ: Giả sử trong trò chơi Đoán số, không ai được đoán quá 7 lần. Em hãy gỡ lỗi chương trình trò chơi Đoán số trong Hình 15.4 (đã được bổ sung chức năng thông báo người chơi thua cuộc nếu vẫn đoán sai ở lần thứ 7). Hướng dẫn a) Kiểm thử và phát hiện lỗi Bước 1. Chạy thử chương trình - Với tình huống đoán đúng số bí mật sau không quá 7 lần đoán, thông báo hiển thị số lần đoán không xuất hiện cụm từ “Số lần đoán:" như trong chương trình. - Với tình huống đoán sai, chương trình không kết thúc và bảo thua ngay sau khi đoán sai lần thứ 7 mà vẫn cho đoán thêm một lần nữa.. Bước 2. Phát hiện lỗi Gợi ý: - Trong tình huống thứ nhất, lỗi xảy ra ở câu lệnh hiển thị. Phép toán ghép nối các chữ là “kết hợp...” chứ không phải dấu “+”. - Trong tình huống thứ hai, lỗi xảy ra ở biểu thức điều kiện. Vì mỗi người không đoán quá 7 lần nên vòng lặp (6) – (10) sẽ kết thúc khi số lần đoán bằng 7. Ngoài ra, sau 7 lần đoán, vẫn có thể xảy ra cả hai khả năng đoán đúng hoặc đoán sai. Vì vậy, số lần đoán không cho biết kết quả đoán đúng hay sai. b) Sửa các lỗi phát hiện được - Điều kiện trong câu lệnh (6) cần đổi thành hoặc - Điều kiện rẽ nhánh ở lệnh (11) cần được chỉnh sửa thành - Sửa biểu thức trong lệnh hiển thị (1). Khi đó, các lệnh (11) đến (14) như Hình 15.5. Bước 2: HS thực hiện nhiệm vụ học tập - HS thực hành trên phần mềm Scratch phiên bản 3.0 với giao diện tiếng Việt để minh họa. - GV hướng dẫn, theo dõi, hỗ trợ HS (nếu cần thiết). Bước 3: Báo cáo kết quả hoạt động và thảo luận - GV mời đại diện một HS chia sẻ kết quả chạy chương trình. - Các HS khác trình bày kết quả bài thực hành sau khi thực hành xong. - GV mời đại diện HS khác nhận xét, bổ sung. Bước 4: Đánh giá kết quả, thực hiện nhiệm vụ học tập - GV đánh giá, nhận xét, chuẩn kiến thức. - GV khích lệ những nhóm chạy chương trình tốt và góp ý những nhóm chưa chạy được chương trình. | 3. Thực hành: Gỡ lỗi Nhiệm vụ |
Nhiệm vụ 1: Chơi trò chơi trắc nghiệm
Bước 1: GV chuyển giao nhiệm vụ học tập
- GV nêu yêu cầu: Khoanh tròn vào đáp án đặt trước câu trả lời đúng
Câu 1: Lỗi chương trình phân thành mấy loại?
Câu 2: Lỗi cú pháp là
Câu 3: Hãy sắp xếp các việc dưới đây theo trình tự để phát hiện, gỡ lỗi chương trình.
1 – Xây dựng bộ dữ liệu thử với các tình huống có thể xảy ra khi đưa chương trình vào sử dụng.
2 – Tìm câu lệnh, cấu trúc điều khiển gây ra lỗi.
3 – Thực hiện chương trình với các bộ dữ liệu thử.
4 – Sửa lỗi cho chương trình.
5 – Xác định nguyên nhân gây lỗi.
Nâng cấp lên tài khoản VIP để tải tài liệu và dùng thêm được nhiều tiện ích khác