Solution:

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

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

方法二:本人的答案

 def gj(bmi):
if bmi<18.5:
a = "偏瘦"
elif 18.5<=bmi<25:
a = "正常"
elif 25<=bmi<30:
a = "偏胖"
else:
a = "肥胖"
return a
def gn(bmi):
if bmi<18.5:
b = "偏瘦"
elif 18.5<=bmi<24:
b = "正常"
elif 24<=bmi<28:
b = "偏胖"
else:
b = "肥胖"
return b
def main():
height, weight = eval(input())
bmi= round(weight/(height**2),2)
c = gj(bmi)
d = gn(bmi)
print("BMI数值为:{}".format(bmi))
print("BMI指标为:国际'{}',国内'{}'".format(c,d))
main()

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

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

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

身体质量指数BMI的更多相关文章

  1. 第九章 身体质量指数BMI的python实现

    身体质量指数BMI:对身体质量的刻画(Body Mass Index) 国际上常用的衡量人体肥胖和健康程度的重要标准,主要用于统计分析 定义: BMI=体重(kg)/身高^2(m2) 提出问题: 实例 ...

  2. Python计算身体质量指数BMI

    使用Python计算身体质量指数BMI 运行结果如下: 源代码: 1 ''' 2 3. 利用函数思想,将"身体质量指数BMI"源程序封装成为一个函数并调用. 3 :param he ...

  3. 024 实例5-身体质量指数BMI

    目录 一."身体质量指数BMI"问题分析 1.1 身体质量指数BMI 1.2 问题需求 二."身体质量指数BMI"实例讲解 2.1 身体质量指标BMI 2.1. ...

  4. Android app身体质量指数(BMI)

    针对中国人的标准身高体重来測算,提示您身体的健康状况. 提示您是否应该锻炼.节食或者补充营养等.第一时间知道您的健康状况. 下载地址:http://android.myapp.com/myapp/de ...

  5. python身体指数BMI

    问题需求 既要输出国际标准也要输出国内标准

  6. Java语言程序设计(基础篇) 第三章 选择

    第三章 选择 3.8 计算身体质量指数 package com.chapter3; import java.util.Scanner; public class ComputeAndInterpret ...

  7. python学习笔记(4)

    .................................................................................................... ...

  8. Python第四章(北理国家精品课 嵩天等)

    一.程序的分支结构 二.身体质量指数BMI #CalBIv1.py height,weight = eval((input("请输入身高(米)和体重\(公斤)[逗号隔开]:"))) ...

  9. Python学习笔记5程序的控制结构

    1.分支结构 (1)单分支结构 (2)二分支结构 (3)多分支结构 条件判断 (4)程序的异常处理 2.实例:身体质量指数BMI 思路一(国内,稍作修改就是国际): 思路二: height,weigh ...

随机推荐

  1. ES6中的解构

    数组中的解构: 输出 : 白板 幺鸡 二条 对象的解构: 输出: 老王 12 数组的结构用[];对象的解构用{}:一定要区分它是数组还是解构. 区分方法:看 它是在赋值还是在拿值,等号左边,都为解构, ...

  2. 获取文件版本(IE)

    GetFileInfoCUIAction::GetFileVersion2GetSystemDirectory     WCHAR szConfigFile[MAX_PATH + 1];    ::G ...

  3. 使用SVG symbols建立图标系统完整指南

    从最开始的使用img图片,到后来的使用css sprite来减少服务器请求,再到流行的图形字体化图标Iconfont.现在,一种全新的图标使用方式开始流行了起来--SVG symbols图标. 工作原 ...

  4. [leetcode] 110. Balanced Binary Tree (easy)

    原题链接 水题 深度搜索每一节点的左右深度,左右深度差大于1就返回false. class Solution { public: bool isBalanced(TreeNode *root) { b ...

  5. iOS 图解弹幕功能的实现

    先来看一张效果图(LICEcap录制的有点卡, 凑合看) 理一下大概流程: 接下来实现: 弹幕视图从底部弹上来, 依次动画向上滚动, 出屏幕就移除加入重用队列, 下次使用. 定义相关属性: 1. 根据 ...

  6. linux初学者-iscsi篇

     linux初学者-iscsi篇         之前介绍过网络文件共享系统NFS和CIFS.在系统中,设备也是可以共享的,这就是iSCSI,它可以用来建立和管理IP存储设备.主机和客户机等之间的相互 ...

  7. linux初学者-sshd服务

     linux初学者-sshd服务   在linux系统操作中,经常需要连接其他的主机,连接其他主机的服务是openssh-server,它的功能是让远程主机可以通过网络访问sshd服务,开始一个安全s ...

  8. Python识别璇玑图中诗的数量

    一.璇玑图简介 璇玑图的读法有很多,这里我使用七七棋盘格的读法,在璇玑图中分离出一个七七棋盘格,如下表 吏 官 同 流 污 合 玩 痞 悍 蒙 骗 造 假 蛋 鸡 宴 请 客 友 朋 远 戚 偏 正 ...

  9. IO流3

    public class Test1 { public static void main(String[] args) throws Exception { //第二个参数,表示是否向末尾追加,tru ...

  10. linuk下proftpd安装

    Linux下Proftpd安装与配置 1.下载 下载地址:ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.6rc1.tar.gz 文件下载到/soft ...