zoukankan      html  css  js  c++  java
  • 第九章 身体质量指数BMI的python实现

    身体质量指数BMI:对身体质量的刻画(Body Mass Index)

    国际上常用的衡量人体肥胖和健康程度的重要标准,主要用于统计分析

    定义:

      BMI=体重(kg)/身高^2(m2)

    提出问题:

      实例:体重72kg 身高1.75m

      BMI值是23.5

    这个值是否健康呢?

    分类 国际BMI值(kg/m^2) 国内BMI值(kg/m^2)
    偏瘦 <18.5 <18.5
    正常 18.5-25 18.5-24
    偏胖 25-30 24-28
    肥胖 >=30 >=28

    问题分析:

    1、输入:给定体重和身高值

    2、输出:BMI指标分类信息(国际和国内)

    我们大概有两个思路:

    思路1:分别计算给出国际和国内的BMI分类

    思路2:混合计算并给出国际国内BMI分类

    首先我们根据思路一编写如下代码

     1 #CalBMIv1.py
     2 height, weight = eval(input("请输入身高(米)和体重(公斤)[逗号隔开]: "))
     3 bmi = weight / pow(height, 2)
     4 print("BMI 数值为:{:.2f}".format(bmi))
     5 who = ""
     6 if bmi < 18.5:
     7     who = "偏瘦"
     8 elif 18.5 <= bmi < 25:
     9     who = "正常"
    10 elif 25 <= bmi < 30:
    11     who = "偏胖"
    12 else:
    13     who = "肥胖"
    14 print("BMI 指标为:国际'{0}'".format(who))
     1 #CalBMIv2.py
     2 height, weight = eval(input("请输入身高(米)和体重(公斤)[逗号隔开]: "))
     3 bmi = weight / pow(height, 2)
     4 print("BMI 数值为:{:.2f}".format(bmi))
     5 nat = ""
     6 if bmi < 18.5:
     7     nat = "偏瘦"
     8 elif 18.5 <= bmi < 24:
     9     nat = "正常"
    10 elif 24 <= bmi < 28:
    11     nat = "偏胖"
    12 else:
    13     nat = "肥胖"
    14 print("BMI 指标为:国内'{0}'".format(nat))

    根据思路2,可以编写如下程序

     1 #CalBMIv3.py
     2 height, weight = eval(input("请输入身高(米)和体重(公斤)[逗号隔开]: "))
     3 bmi = weight / pow(height, 2)
     4 print("BMI 数值为:{:.2f}".format(bmi))
     5 who, nat = "", ""
     6 if bmi < 18.5:
     7     who, nat = "偏瘦", "偏瘦"
     8 elif 18.5 <= bmi < 24:
     9     who, nat = "正常", "正常"
    10 elif 24 <= bmi < 25:
    11     who, nat = "正常", "偏胖"
    12 elif 25 <= bmi < 28:
    13     who, nat = "偏胖", "偏胖"
    14 elif 28 <= bmi < 30:
    15     who, nat = "偏胖", "肥胖"
    16 else:
    17     who, nat = "肥胖", "肥胖"
    18 print("BMI 指标为:国际'{0}', 国内'{1}'".format(who, nat))

    大家可以动手试试

  • 相关阅读:
    springboot配置tomcat大全
    python 列表推导式
    python中yield的用法详解——最简单,最清晰的解释
    正则表达式
    python 装饰器
    python 接口类、抽象类、多态
    python split和os.path.split()
    pyhton 多继承的执行顺序
    python unittest 加载测试用例的方法
    python unittest中的四个概念
  • 原文地址:https://www.cnblogs.com/chy8/p/9453289.html
Copyright © 2011-2022 走看看