27.12. Chỉ số sức khoẻ BMI có ý nghĩa như sau:Nếu BMI < 18 thì phân loại là gầy.Nếu BMI từ 18...

Câu hỏi:

27.12. Chỉ số sức khoẻ BMI có ý nghĩa như sau:

Nếu BMI < 18 thì phân loại là gầy.

Nếu BMI từ 18 đến 25 thi phân loại là bình thường.

Nếu BMI > 25 thì phân loại là béo phì.

Viết chương trình thực hiện các công việc sau:

  • Yêu cầu người dùng nhập các thông số: họ tên, cân nặng (đơn vị kg) và chiều cao (đơn vị m).
  • Sau đó thông báo "Bạn gầy" hoặc “Bạn bình thường" hoặc "Bạn bị béo phì".
Câu trả lời:
Người trả lời: GV. Đỗ Đăng Dung
Câu trả lời trên cung cấp một cách viết chương trình để tính chỉ số BMI và dựa vào giá trị đó để phân loại trạng thái cơ thể của người dùng. Để viết lại chi tiết hơn, ta có thể bổ sung một số thông tin như kiểm tra tính hợp lệ của dữ liệu nhập vào từ người dùng, hiển thị thông báo lỗi khi nhập sai, và thêm các điều kiện phân loại rõ ràng hơn. Dưới đây là một cách viết chương trình chi tiết hơn:

```python
def bmi(mass, height):
if height <= 0:
return -1 # Trả về mã lỗi nếu chiều cao không hợp lệ
return mass / (height * height)

ten = input("Nhập họ tên: ")
while True:
try:
mass = float(input("Nhập cân nặng (kg): "))
height = float(input("Nhập chiều cao (m): "))
break
except ValueError:
print("Dữ liệu nhập vào không hợp lệ. Vui lòng nhập lại.")

bmi_value = bmi(mass, height)

if bmi_value == -1:
print("Chiều cao không hợp lệ. Vui lòng nhập lại.")
elif bmi_value < 18:
print(ten, "Bạn gầy")
elif bmi_value >= 18 and bmi_value < 25:
print(ten, "Bạn bình thường")
else:
print(ten, "Bạn bị béo phì")
```

Trong đoạn mã trên, chúng ta đã thêm kiểm tra tính hợp lệ của dữ liệu đầu vào và hiển thị thông báo lỗi khi người dùng nhập sai. Ngoài ra, chúng ta đã thêm điều kiện phân loại chi tiết hơn để đảm bảo kết quả được xác định chính xác hơn.
Bình luận (0)
Nhấn vào đây để đánh giá
Thông tin người gửi
1.06481 sec| 2203.898 kb