1、2.22.2 做出判断的分支做出判断的分支 【教学【教学目标目标】 1认识程序的选择结构,了解 python 语言语句缩进的特点。 2熟练应用条件表达式,掌握 if 语句的语法格式。来源:Zxxk.Com 3能用条件语句编写程序解决生活中的问题,提升逻辑思维能力,进一步 体会算法及其思想。 【教学重点】【教学重点】 理解赋值、分支语句的工作原理;掌握赋值、分支语句的格式和使用方法。 【教学难点】【教学难点】 能够使用赋值、分支语句解决实际问题。 【教学过程】【教学过程】 一、引入一、引入 男最适宜运动心率(220年龄数安静心率)(60%80%)安静 心率 女最适宜运动心率(210年龄数安静心率
2、)(60%80%)安静 心率 以上计算最适宜运动心率的公式是有性别差异的, 那么如何修改程序可以实现根据性别给出结果呢? 二、分支语句二、分支语句 程序中需要根据不同的条件判断来决定程序执行 走向的,可以使用 if 分支语句实现。 1.基本格式 (1)单分支 if 条件(表达式) : 语句或语句组 对于条件表达式可以是一个单纯的布尔值或变量, 也可以是比较表达式或逻 辑表达式,如果表达式的值为真,则执行“语句块” ,如果表达式的值为假,就 跳过“语句块” ,继续执行后面的语句,这种形式就如同汉语里的“如果 就” 。 例例:分支程序用来判断飞船是否能够升空。当飞船速度 v=7.91,输出“飞 船
3、成功飞行! ” ,否则输出“飞船不能升空! ” 。 v=float(input(请输入速度(千米/秒):)来源:学。科。网 if v=7.91:来源:Zxxk.Com print(飞船成功飞行!) else: print(飞船不能升空!) (2)双分支 if 条件(表达式) : 语句或语句组 A else: 语句或语句组 B 使用 ifelse 语句时,条件表达式可以是一个单纯的布尔值或变量,也 可以是比较表达式或逻辑表达式,如果满足条件,则执行 if 后面的语句块,否 则,执行 else 后面的语句块,这种形式就如同汉语里的“如果否则” 练习练习 (1)将下列程序代码补充完整,并调试运行,实
4、现分性别的最适宜心率 计算。 age=float(input(请输入 age=)#输入年龄 HRrest=float(input(请输入 HRrest=)#输入安静心率 gender=input(请输入 male or female :) #输入性别 ifgender=malegender=male :#根据输入的性别判断 n=220n=220 else: n=210n=210 low=(n-age-HRrest)*0.6+HRrest#计算最适宜运动心率低值 high=(n-age-HRrest)*0.8+HRrest#计算最适宜运动心率高值 print(最适宜的心率是:,low,high)
5、 #输出最适宜运动心率范围 input(运行完毕,请按回车键退出.) (3)多分支选择语句来源:Zxxk.Com 其语法格式如下: ifif 条件表达式条件表达式 1:1: 语句块语句块 1 1 elelifif 条件表达式条件表达式 2 2 : : 语句块语句块 2 2 elelifif 条件表达式条件表达式 3:3: 语句块语句块 3 3 else:else: 语句块语句块 n n 使用 ifelifelse 语句时,表达式可以是一个单纯的布尔型或变量, 也可以是比较表达式或逻辑表达式,如果表达式为真,则执行语句;如果表达式 为假,则跳过该语句,进行下一下 elif 的判断,只有在所有表达
6、式都为假的情误 解下,才会执行 else 中的语句。 例例: 下表所示的感冒指数, 根据输入的感冒指数, 输出该指数所对应的含义。 请根据学过的知识编写代码。 (程序的代码如下) num=int(input(请输入感冒指数: ) if 0=num=6 : print(少发) elif 7=num=19: print(较易发) elif 20=num=30: print(易发) elif 31=num=61: print(极易发) else: print(指数值不正确)来源:学。科。网 注:Python 中,不像其他程序设计语言采用大括号“ ”分隔代码块,而 是采用代码缩进和冒号“: ”区分代码
7、之间的层次。 缩进可以使用空格或者 TAB 键实现。其中,使用空格时,通常情况下采用 4 个空格作为一个缩进量,而使用 TAB 键作为一个缩进量,通常情况下建议使用 空格进行缩进。 在 Python 中, 行尾的冒号和下行的缩进表示一个代码块的开始, 而缩进结束,则表示一个代码块的结束。 拓展练习拓展练习: : 生活中各地都有风景区、游乐场需要门票定价,根据游客年龄我们可以这样 规定:小于 3 岁为免费, 小于等于 18 岁票价为 30 元, 大于 18 岁票价为 60 元。 你能根据这些规则设计程序进行门票定价吗? age=int(input(请输您的年龄:) if age 3: price = 0 elif age 18: price = 30 else: pri ce = 60 print(您的门票价格为:+str(price)+ 元。)