

Preview text:
Giải Tin 10 Bài 29: Nhận biết lỗi chương trình KNTT
Luyện tập 1 trang 144 SGK Tin 10 KNTT
Các lệnh sau có sinh lỗi chương trình không? Nếu có thì mã lỗi là gì? Lời giải
- IndentationError: dòng lệnh in range()không đúng vị trí
- TypeError: Thực hiện cộng một xâu và một số nguyên
Luyện tập 2 trang 144 SGK Tin 10 KNTT
Để tính giá trị trung bình của một danh sách số A người lập trình đã dùng lệnh sau để tính: gttb = sum(A)/len(A)
Lệnh này có thể sinh lỗi ngoại lệ không? Nếu có thì những lỗi gì? Lời giải
- Lệnh này có thể sinh lỗi: ZeroDivisionError nếu danh sách A rỗng.
Vận dụng 1 trang 144 SGK Tin 10 KNTT
Giả sử em được yêu cầu viết một chương trình nhập số tự nhiên n từ bàn phím, kết
quả đưa ra là danh sách các ước số thực sự của n, tính cả 1 và không tính n. Hãy viết
chương trình và kiểm tra các khả năng sinh lỗi khi thực hiện chương trình. Lời giải - Chương trình:
n=int(input("Nhập số tự nhiên n")) A=[] for i in range(1,n): if n%i==0: A.append(i) print(A)
- Các lỗi có thể phát sinh: ZeroDivisionError TypeError NameError
Vận dụng 2 trang 144 SGK Tin 10 KNTT
Em hãy viết một chương trình nhỏ để khi chạy sẽ sinh mã lỗi NameError. Lời giải Chương trình: m=n+2-3 print(m)