暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

python基础--多分支选择结构

AI小白笔记 2021-10-08
2959

点击蓝字

关注我们


当我们在做一个决策时,可能会面临有多个选择,比如国庆放假前我们肯定想过,七天去哪呢?旅游?玩游戏?追剧?还是学python?这就是一个多分支的选择结构。这种结构的程序流程图如下图所示:



在上图中,有N-1个表达式,程序先判断第1个表达式是否为真,若是,执行语句块1,退出选择结构;若第1个表达式为假,再判断第2个表达式,以此类推。不管哪个表达式为真,执行完对应的语句块后立即退出选择选择结构,若N-1个表达式全为假,则执行第N个语句块。


接下来用一道题目来说说它的用法。


题目

输入一元二次方程a*x*x+b*x+c=0的三个系数a,b,c,根据以下几种情况输出相应的结果:

  1. a=0,输出“不是二次方程”;

  2. delta=0,求两个相等的实根并输出;

  3. delta>0,求出两个不等的实根并输出;

  4. delta<0,输出“有两个共轭复根”;

代码

import math
a=eval(input('请输入系数a的值:'))
b=eval(input('请输入系数b的值:'))
c=eval(input('请输入系数c的值:'))
delta=b*b-4*a*c
if a==0:
print('不是二次方程')
elif delta==0:
x=(-b+math.sqrt(delta))/(2*a)
print('x1=x2=',x)
elif delta>0:
x1=(-b+math.sqrt(delta))/(2*a)
x2=(-b-math.sqrt(delta))/(2*a)
print('x1=',x1,'x2=',x2)
else:
print('有两个共轭复根')

代码解析

  1. 第8行elif是else if 的组合缩写,若a==0为假,则判断delta==0是否为真;


  2. 最后一个分支用else:,这里不需要任何的表达式,意思是以上表达式全为假时才执行else;


  3. 再次强调每个分支表达式后面都有一个冒号,且冒号下一行必须缩进,这是python语言的特色,也可以理解为这是它的语法。


  4. 代码编写完成后要对所有分支进行测试,所有分支测试没有问题才能确定此代码是正确的。切记一点,代码写完还没完,测试完成才算完,语法没错不代表运行时不会出错。见过太多的学生写完代码一看没语法错误,直接就停下来不运行看结果了,这是初学者的大忌。


接下来布置几道习题,还是像上节一样,先自己练习,下节再公布代码。

多分支选择结构练习题

1

输入一个人身高(m)与体重(kg),求ta的BMI值,并根据BMI值给出对应的类别。(注:BMI=体重/(身高*身高),当BMI<18.5时,这个人偏瘦,BMI值在18.5~24时,为正常,BMI值在24~28时,为偏胖,BMI>=28时,为肥胖)

2

人类腋窝正常体温是36度至37.2度,从键盘输入一个人体温度,判断这个人的体温是过低、正常还是过高。

3

若体重(kg)=身高(cm)-110是一个人的标准体重,低于标准体重5kg为偏瘦,高于标准体重5kg为偏胖,请输入某人的身高与体重,判断这个人的体重是否标准。

THE END


文章转载自AI小白笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论