请编写一个函数实现身体质量指数BMI的计算,并且能够根据下表判断所属健康分类。要求设计主程序输入以下4组数据进行测试。 BMI =体重/身高的平方(kg/m2)
时间: 2024-03-02 10:48:52 浏览: 101
c代码-编写一个求阶乘的函数Fact(),然后在主函数中,计算并输出1到n之间所有数的阶乘值
好的,我可以为您编写这个函数。
以下是实现BMI计算并判断健康分类的Python代码:
```python
def calculate_bmi(weight, height):
"""
计算BMI值
:param weight: 体重,单位:千克
:param height: 身高,单位:米
:return: BMI指数
"""
bmi = weight / (height ** 2)
return bmi
def health_classification(bmi):
"""
判断BMI所属的健康分类
:param bmi: BMI指数
:return: 健康分类
"""
if bmi < 18.5:
return "偏瘦"
elif 18.5 <= bmi < 24:
return "正常"
elif 24 <= bmi < 28:
return "超重"
elif 28 <= bmi < 30:
return "轻度肥胖"
elif bmi >= 30:
return "重度肥胖"
# 主程序
if __name__ == "__main__":
test_data = [
{"weight": 50, "height": 1.6},
{"weight": 70, "height": 1.75},
{"weight": 80, "height": 1.8},
{"weight": 90, "height": 1.7},
]
for data in test_data:
bmi = calculate_bmi(data["weight"], data["height"])
health_class = health_classification(bmi)
print("体重:{}千克,身高:{}米,BMI指数:{:.2f},健康分类:{}".format(data["weight"], data["height"], bmi, health_class))
```
在上述代码中,`calculate_bmi`函数用于计算BMI指数,`health_classification`函数则用于根据BMI指数判断所属健康分类。主程序中输入了4组测试数据,分别输出了BMI指数和健康分类。
希望这个函数能够帮助到您!
阅读全文