1、思维导图
2、案例
# encoding = utf-8
# 输入身高、体重、年龄、性别
height,weight,age,gender = input('请输入身高(m)、体重(kg)、年龄、性别(1表示男性,0表示女性):(中间用空格隔开)').split(' ')
# 输入数据类型处理
height = float(height)
weight = float(weight)
age = int(age)
gender = int(gender)
# 容错处理,数据有效性的验证
if 0 < height < 3 and 0 < weight < 300 and 0 <age < 150 and (gender == 1 or gender == 0):
# 计算体脂率
BMI = weight / (height * height)
BodyFatRate = 1.2 * BMI + 0.23 * age - 5.4 - 10.8 * gender
# 判断体脂率是否处于正常范围
# 正常成年人的体脂率分别是男性15%~18%和女性25%~28%
if gender == 1:
print("男性,体脂率为%.2f%%" % BodyFatRate)
if BodyFatRate < 15:
print("体脂率过低")
elif 15 <= BodyFatRate <= 18:
print('体脂率正常')
else:
print('体脂率过高')
elif gender == 0:
print("女性,体脂率为%.2f%%" % BodyFatRate)
if BodyFatRate < 25:
print("体脂率过低")
elif 25 <= BodyFatRate <= 28:
print('体脂率正常')
else:
print('体脂率过高')
else:
print('数据错误,注意数据输入提醒事项')