Giải SBT Tin 10 KNTT Bài 30. Kiểm thử và gỡ lỗi chương trình có đáp án

Chương trình sau sẽ yêu cầu nhập một danh sách học sinh trong lớp cùng với cân nặng, chiều cao, sau đó tự động tính chỉ số BMI và in ra danh sách

10/10

Chương trình sau sẽ yêu cầu nhập một danh sách học sinh trong lớp cùng với cân nặng, chiều cao, sau đó tự động tính chỉ số BMI và in ra danh sách các bạn béo phì. Quan sát chương trình và đưa thêm các lệnh in giá trị trung gian để kiểm soát lỗi chương trình.

0/3000 ký tự
Giải thích

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)