Giải Tin học 10 Bài 29: Nhận biết lỗi chương trình
Trả lời câu hỏi Luyện tập Tin 10 Bài 29
Luyện tập 1
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
Để 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.
Trả lời câu hỏi Vận dụng trang 144 SGK Tin 10
Vận dụng 1
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
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)

Preview text:

Giải Tin học 10 Bài 29: Nhận biết lỗi chương trình
Trả lời câu hỏi Luyện tập Tin 10 Bài 29 Luyện tập 1
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
Để 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.
Trả lời câu hỏi Vận dụng trang 144 SGK Tin 10 Vận dụng 1
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
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)