Slide bài giảng tin học 10 kết nối bài 29: Nhận biết lỗi chương trình
Slide điện tử bài 29: Nhận biết lỗi chương trình. Trình bày với các hiệu ứng hiện đại, hấp dẫn. Giúp học sinh hứng thú học bài. Học nhanh, nhớ lâu. Có tài liệu này, hiệu quả học tập của môn Tin học 10 Kết nối tri thức sẽ khác biệt
Bạn chưa đủ điều kiện để xem được slide bài này. => Xem slide bài mẫu
Tóm lược nội dung
BÀI 29: NHẬN BIẾT LỖI CHƯƠNG TRÌNH (2 TIẾT)
KHỞI ĐỘNG
- GV yêu cầu HS thảo luận và trả lời:
Chương trình sẽ lập tức dừng và thông báo lỗi Syntax Error đây là lỗi gì trong chương trình Python?
NỘI DUNG BÀI HỌC GỒM
- Nhận biết lỗi chương trình
- Một số lỗi ngoại lệ thường gặp
HÌNH THÀNH KIẾN THỨC
1. Nhận biết lỗi chương trình
- Có những loại lỗi chương trình nào? Phân biệt một số loại lỗi chương trình như nào?
Nội dung ghi nhớ:
- Hoạt động 1: Phân biệt một số loại lỗi chương trình:
+ Loại 1: Lỗi cú pháp. Đây là lỗi viết sai cú pháp, chương trình sẽ dừng lại ngay. Lỗi này là lỗi Runtime.
+ Loại 2: Lỗi ngoại lệ. Đây là lỗi lôgic nội tại khi lập trình, chương trình sẽ dừng lại ngay và trả về một mã lỗi gọi là mã lỗi ngoại lệ. Lỗi này vẫn là lỗi Runtime.
+ Loại 3: Lỗi khác. Các lỗi này chương trình không dừng lại mà chỉ đưa ra kết quả sai. Các lỗi loại này thường gọi là lỗi ngữ nghĩa hay lỗi lôgic bên trong chương trình.
Câu hỏi và bài tập củng cố:
1. Đây là lỗi cú pháp.
2. Đây là lỗi lôgic nội tại, không phải lỗi ngoại lệ.
2. Một số lỗi ngoại lệ thường gặp
- Em hãy cho biết một số lỗi ngoại lệ thường gặp?
Nội dung ghi nhớ:
- Một số lỗi ngoại lệ thường gặp:
+ ZeroDivisionError: Lỗi này xảy ra khi thực hiện phép chia cho giá trị 0.
+ IndexError: Lỗi xảy ra khi lệnh cố gắng truy cập phần tử của danh sách nhưng chỉ số vượt quá giới hạn.
+ NameError: Lỗi xảy ra khi chương trình muốn tìm một tên nhưng không nhìn thấy.
+ TypeError: Lỗi kiểu dữ liệu.
+ ValueError:
· Lỗi liên quan đến giá trị của đối tượng.
· Lỗi khi thực hiện lệnh chuyển đổi kiểu dữ liệu, đối số của hàm có giá trị mà hàm không hỗ trợ.
+ IndentationError: Lỗi khi các dòng lệnh thụt vào không thẳng hàng hoặc không đúng vị trí.
+ SyntaxError: Lỗi cú pháp.
Câu hỏi và bài tập củng cố:
a) Lỗi kiểu dữ liệu: TypeError.
b) Lỗi giá trị dữ liệu: ValueError.
c) Lỗi kiểu dữ liệu: TypeError.
d) Nếu có lỗi xảy ra thì có thể là các loại lỗi sau đây:
+ TypeError nếu dữ liệu (số 10) truyền vào đối số của hàm x() bị sai kiểu.
+ NameError nếu hàm x() chưa được định nghĩa trước đó.
+ TypeError nếu giá trị trả lại của hàm x(10) không cùng kiểu để có thể thực hiện phép toán 12 + x(10).
C. HOẠT ĐỘNG LUYỆN TẬP
- Hoàn thành bài tập trắc nghiệm sau:
Câu 1: Mã lỗi ngoại lệ của lệnh sau là
s = “12” + 12
A. ZeroDivisionError.
B. TypeError.
C. IndentationError.
D. SyntaxError.
Câu 2: Mã lỗi nào được đưa ra khi lệnh thực hiện phép chia cho giá trị 0
A. ZeroDivisionError.
B. TypeError.
C. ValueError.
D. SyntaxError.
Câu 3: Trong lời gọi hàm, nếu các đối số được truyền vào hàm bị thiếu thì lỗi ngoại lệ phát sinh thuộc loại nào dưới đây?
A. SyntaxError.
B. NameError.
C. TypeError.
D. Không phát sinh lỗi ngoại lệ.
Câu 4: Số phát biểu đúng trong cac phát biểu sau là
1) Chương trình chạy khi lỗi lôgic xảy ra
2) Khi có lỗi sai cấu trúc ngôn ngữ, chương trình vẫn chạy.
3) Khi có lỗi ngoại lệ, chương trình dừng và thông báo lỗi.
4) Mã lỗi ngoại lệ trả lại gọi là mã lỗi ngoại lệ.
A. 2.
B. 3.
C. 4.
D. 1.
Câu 5: IndentationError là lỗi ngoại lệ như thế nào?
A. Lỗi liên quan đến giá trị của đối tượng.
B. Lỗi khi các dòng lệnh thụt vào không thằng hàng hoặc không đúng vị trí.
C. Lệnh tính biểu thức số nhưng lại có một toán hạng không phải là số.
D. Lỗi cú pháp.
Gợi ý đáp án:
Câu | 1 | 2 | 3 | 4 | 5 |
Đáp án | B | A | C | B | B |
D. HOẠT ĐỘNG VẬN DỤNG
Vận dụng kiến thức, GV yêu cầu HS trả lời câu hỏi:
Câu 1: Chương trình sau thông báo lỗi gì?
n = 5
for i in range(n):
prin(t)
Câu 2: Lỗi chương trình Python thường có bao nhiêu loại?
Câu 3: Cách xử lí các loại lỗi giống nhau hay khác nhau?