Đáp án và lời giải
Giải SBT Tin 10 KNTT Bài 30. Kiểm thử và gỡ lỗi chương trình có đáp án
Câu 1
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Đáp án đúng là: D
Mục đích của kiểm thử chương trình: Để tìm ra lỗi và phòng ngừa, ngăn chặn các lỗi phát sinh trong tương lai.
Câu 2
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Câu 3
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Đáp án đúng là: D
Lỗi ZeroDivisionError là lỗi chia cho 0, em cần tìm hiểu nguyên nhân vì sao lại xuất hiện 0 khi chia, có thể bổ sung lệnh kiểm tra trước khi thực hiện phép chia.
Câu 4
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Đáp án đúng là: D
Công cụ break point cho phép tạo ra các “điểm dừng” bên trong chương trình. Khi chạy, chương trình sẽ tạm dừng tại các “điểm dừng” cho phép người kiểm thử có thể quan sát các thông tin khác bên trong chương trình, qua đó kiểm tra tính đúng đắn của chương trình.
Câu 5
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Đáp án đúng là: C
Bộ dữ liệu kiểm thử (test) cần được sinh ngẫu nhiên và phủ kín các trường hợp biên của dữ liệu đầu vào bài toán.
Câu 6
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Đáp án đúng là: D
Dữ liệu ở vùng biên là: x ở gần 0 hoặc x rất lớn.
Câu 7
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Đáp án đúng là: C
Phần mềm soạn thảo lập trình không hạn chế điểm dừng.
Câu 8
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Các phương pháp được coi là phương pháp kiểm thử chương trình là:
A. In các dữ liệu trung gian.
C. Sinh các bộ dữ liệu test để kiểm tra chương trình.
E. Tạo điểm dừng để quan sát và phát hiện lỗi chương trình.
Câu 9
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
* Chương trình có thể viết như sau:
A = []
n = int(input("Nhập số tự nhiên n: "))
for i in range(n):
num = eval(input("Nhập số thứ "+str(i+1)+": "))
k = 0
while k < len(A) and A[k] < num:
k = k + 1
A.insert(k,num)
print("Dãy số đã nhập:",A)
* Các em tự tiến hành kiểm thử chương trình.
Câu 10
Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý
Chương trình có thể viết như sau:
def bmi(m,h):
return m/(h*h)
def NhapDL():
DS = []
n = int(input("Nhập số học sinh: "))
for k in range(n):
ten = input("Nhập tên học sinh thứ "+ str(k+1)+" : ")
mass = float(input("Nhập cân nặng: "))
h = float(input("Nhập chiều cao: "))
DS. append([ten, mass, h])
return DS
# Chương trình chính
DS = NhapDL()
DSBP = []
for k in range(len(DS)):
hs = DS [K]
if bmi(hs[1], hs[2]) > 25:
DSBP.append(hs[0])
print("Danh sách học sinh béo phì trong lớp:")
for hs in DSBP:
print(hs)