Python案例3—计算基础代谢率V_2.0
大家好,我是白菜胡萝丸子
人生苦短,Python当歌
项目导入
版本2.0:在版本1.0的基础上改造程序,根据用户的输入计算BMR,将BMR计算封装到函数并实现持续运行,让用户选择退出
项目分析—理清思路
- 分析问题:分析问题的计算部分
- 明确问题:划分问题的输入、处理和输出部分(IPO)
- 设计算法:计算部分的核心
请尝试绘制思维导图
知识点学习–万丈高楼平地起
复习:
- Python语法的基础知识
- 函数的定义与调用
- 用程序解决问题的方法
- …
上机编程–动动手,让程序运行起来
参照代码
"""作者:白菜胡萝丸子版本2.0:在版本1.0的基础上改造程序,根据用户的输入计算BMR,将BMR计算封装到函数并实现持续运行,让用户选择退出"""# 定义女,男性bmr计算函数def women_bmr(weight, height, age): bmr_women = 9.6 * weight + 1.8 * height - 4.7 * age + 655 return bmr_womendef men_bmr(weight, height, age): bmr_men = 13.7 * weight + 5.0 * height - 6.8 * age + 66 return bmr_men# 定义主函数def main(): # 设置循环判断变量 y_n = input('您是否继续运行程序(继续则输入-y,否则输入-n:') # 设置循环的次数 i = 0 # while y_n == 'y': # 用户输入基础数据 gender = input('请您输入性别男(女):') weight = float(input('请您输入您的体重(kg,输入时请不要带单位:')) height = float(input('请您输入您的身高(cm,输入时请不要带单位:')) age = int(input('请您输入您的年龄:')) if gender == '女': bmr = women_bmr(weight, height, age) print('您的基础代谢率为', bmr) elif gender == '男': bmr = men_bmr(weight, height, age) print('您的基础代谢率为', bmr) else: print('暂时不支持计算') # 计算循环次数 i = i + 1 print('这是程序的第', i , '次运行。' ) print('----------------------------') y_n = input('您是否继续运行程序(继续则输入-y,否则输入-n:')if __name__ == '__main__': main()
执行结果
您是否继续运行程序(继续则输入-y,否则输入-n):y请您输入性别男(女):男请您输入您的体重(kg,输入时请不要带单位:61请您输入您的身高(cm,输入时请不要带单位:180请您输入您的年龄:21您的基础代谢率为 1658.8999999999999这是程序的第 1 次运行。----------------------------您是否继续运行程序(继续则输入-y,否则输入-n:y请您输入性别男(女):女请您输入您的体重(kg,输入时请不要带单位:48请您输入您的身高(cm,输入时请不要带单位:172请您输入您的年龄:18您的基础代谢率为 1340.8这是程序的第 2 次运行。----------------------------您是否继续运行程序(继续则输入-y,否则输入-n:nProcess finished with exit code 0
更上一层楼–让程序进化一点点
在版本2.0的基础上改造程序,能否BMR值的输出要带单位,用户能否将数值在一行输入