Hoạt động 1: Mở đầu · 5 phút
Đoán loại lỗi qua ba đoạn mã
a) Mục tiêu
Huy động kiến thức nền về lỗi khi viết chương trình và tạo nhu cầu phân biệt các loại lỗi.
b) Nội dung
GV chiếu ba đoạn mã ngắn: (1) câu lệnh if thiếu dấu hai chấm ở cuối; (2) a = [2, 6, 9] và lệnh print(a[3]); (3) a = 7, b = 4, lệnh print(2*a + b) với yêu cầu tính chu vi hình chữ nhật. HS trả lời: đoạn nào không chạy được, đoạn nào chạy và báo lỗi khi đang thực thi, đoạn nào chạy xong nhưng kết quả sai yêu cầu.
c) Sản phẩm
HS nêu được: (1) lỗi cú pháp, chương trình không được hiểu nên không chạy; (2) ngoại lệ IndexError khi chạy vì chỉ số 3 nằm ngoài miền 0 đến 2; (3) lỗi logic vì chương trình chạy và in 18 trong khi chu vi đúng là 22.
d) Tổ chức thực hiện
Hoạt động của giáo viên
Hoạt động của học sinh
Giáo viên
Bước 1: Chuyển giao nhiệm vụ
GV chiếu ba đoạn mã, nêu câu hỏi: “Đoạn nào không chạy được? Đoạn nào chạy rồi báo lỗi? Đoạn nào chạy xong nhưng sai yêu cầu?” GV yêu cầu HS suy nghĩ 30 giây, không cần viết đầy đủ.
Học sinh
HS lắng nghe, đọc từng đoạn mã trên màn hình và suy nghĩ câu trả lời.
Giáo viên
Bước 2: Thực hiện nhiệm vụ
GV mời HS trao đổi nhanh theo cặp đôi trong 1 phút và ghi tên ba loại lỗi dự đoán vào giấy nháp.
Học sinh
HS thảo luận theo cặp, dự đoán: đoạn 1 có thể là lỗi cú pháp, đoạn 2 có thể là lỗi chỉ số, đoạn 3 có thể là lỗi công thức.
Giáo viên
Bước 3: Báo cáo, thảo luận
GV gọi 2 đến 3 cặp trình bày, ghi nhanh các dự đoán lên bảng và chưa chốt đúng sai ngay.
Học sinh
Đại diện cặp trả lời, ví dụ: “Đoạn 1 không chạy vì thiếu dấu hai chấm; đoạn 2 chạy đến dòng in thì dừng vì chỉ số 3 không có; đoạn 3 chạy được nhưng 2*7+4 bằng 18, không phải chu vi 22.”
Giáo viên
Bước 4: Kết luận, nhận định
GV nhận xét và nêu vấn đề: có ba kiểu lỗi khác nhau về thời điểm xuất hiện và cách nhận biết. Dẫn sang bài học.
Học sinh
HS ghi tên bài học và ba loại lỗi cần tìm hiểu vào vở.