zoukankan      html  css  js  c++  java
  • 身体质量指数BMI

    Solution:

    方法一:"Python语言程序设计"(中国大学MOOC平台)的答案

    分析:对比两种指标,将共性(相同的区间)和异性(不同的区间)细分。这样两种指标的判断条件(不等式)会一致,从而所分的每个区间都只用一条判断语句即可处理,同时将处理的结果一次性赋值给两个变量

    方法二:本人的答案

     1 def gj(bmi):
     2     if bmi<18.5:
     3         a = "偏瘦"
     4     elif 18.5<=bmi<25:
     5         a = "正常"
     6     elif 25<=bmi<30:
     7         a = "偏胖"
     8     else:
     9         a = "肥胖"
    10     return a
    11 def gn(bmi):
    12     if bmi<18.5:
    13         b = "偏瘦"
    14     elif 18.5<=bmi<24:
    15         b = "正常"
    16     elif 24<=bmi<28:
    17         b = "偏胖"
    18     else:
    19         b = "肥胖"
    20     return b
    21 def main():
    22     height, weight = eval(input())
    23     bmi= round(weight/(height**2),2)
    24     c = gj(bmi)
    25     d = gn(bmi)
    26     print("BMI数值为:{}".format(bmi))
    27     print("BMI指标为:国际'{}',国内'{}'".format(c,d))
    28 main()

    此方法没有将两种指标不同的区间加以细分,原原本本按照题目表格的判断条件(不等式)进行讨论。此题使用自定义函数要注意以下几点:

    (1)因为“国际”函数:gj()和“国内”函数:gn(),都要用到bmi,所以两函数的参数都必须设为bmi。此题这两个函数的独立运行,互不影响,即没有信息流的传递

    (2)主函数中,行22-23也可写在最开头,但为了规范,建议写进主函数中。行24-25的c和d可以省略,将行27、28的c和d改为gj(bmi)和gn(bmi)即可

  • 相关阅读:
    利用heroku+mongoLab 部署Node 运用
    css常见解决方案
    JavaScript数组基本用法
    ES5中数组的新方法
    JavaScript闭包详解
    力扣第991题 坏了的计算器
    力扣第1189题 “气球” 的最大数量
    力扣第142题 环形链表 II
    力扣第260题 只出现一次的数字 III
    力扣第141题 环形链表
  • 原文地址:https://www.cnblogs.com/kenny-feng/p/11323572.html
Copyright © 2011-2022 走看看