Python程序设计PPT课件(共12章)第3章 流程控制..pptx
《Python程序设计PPT课件(共12章)第3章 流程控制..pptx》由会员分享,可在线阅读,更多相关《Python程序设计PPT课件(共12章)第3章 流程控制..pptx(52页珍藏版)》请在冰豆网上搜索。
,第3章流程控制,if语句if语句的嵌套循环语句循环嵌套跳转语句,第3章流程控制,掌握if语句的多种格式熟练使用if语句的嵌套掌握for循环与while循环的使用熟悉for循环与while循环嵌套掌握break与continue语句的使用,第一部分,结构化程序设计,思考:
什么是流程控制?
4,程序流程控制,程序中的语句默认自上而下顺序执行。
流程控制意指在程序执行时,通过一些特定的指令更改程序中语句的执行顺序,使程序产生跳跃、回溯等现象。
程序流程控制,5,流程图示例,6,第二部分,条件语句,类似这种需求的功能,都可以使用if语句实现。
8,程序开发中经常会用到条件判断,比如,用户登录时需判断用户名和密码是否全部正确,进而决定用户是否能够成功登录。
if语句的格式,if,单分支,9,双分支,多分支,if-else,if-elif-else,if语句可使程序产生分支,根据分支数量的不同,if语句分为单分支、双分支和多分支语句。
if语句的格式,if条件表达式:
代码块,if语句由if关键字、条件表达式和代码块三部分组成,它根据表达式的判断结果选择是否执行相应的代码块。
10,if语句的格式,if关键字可以理解为“如果”,当条件表达式的值为True时,则执行代码块。
if语句的格式,11,if条件表达式:
代码块1else:
代码块2,if-else语句产生两个分支,可根据条件表达式的判断结果选择执行哪一个分支。
12,if语句的格式,如果if条件表达式结果为True,则执行代码块1;如果条件表达式结果为False,则执行代码块2。
if语句的格式,13,if条件表达式1:
代码块1elif条件表达式2:
代码块2elif条件表达式3:
代码块3elif条件表达式n-1:
代码块n-1else:
代码块n,如果程序需要处理多种情况,那么可以使用if-elif-else语句。
14,if语句的格式,若条件表达式1的结果为True,则执行代码块1;若条件表达式2的结果为True,则执行代码块2,以此类推,若else前面的条件表达式结果都为False,则执行代码块n。
if语句的格式,15,课堂练习,例如:
1221、1234321.,上机练习1:
判断4位回文数,需求说明所谓回文数,就是各位数字从高位到低位正序排列和从低位到高位逆序排列都是同一数值的数。
本实例要求编写程序,判断输入的4位整数是否是回文数。
16,课堂练习,上机练习2:
奖金发放需求说明某企业发放的奖金是根据利润提成计算的,其规则如下所示。
本实例要求编写程序,实现快速计算员工应得奖金的功能。
17,课堂练习,上机练习3:
会员积分规则需求说明某商场会员的积分规则如表所示。
使用if.elif.else语句实现表所示的会员规则。
18,课堂练习,上机练习4:
根据身高体重计算某个人的BMI值,需求说明BMI又称为身体质量指数,它是国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。
身体质量指数(BMI)=体重(kg)身高2(m2),本案例要求编写程序,根据用户输入的身高和体重计算BMI值,并找到对应的分类。
19,第三部分,条件语句嵌套,if条件表达式1:
代码块1if条件表达式2:
代码块2,21,先判断外层if语句中条件表达式1的结果是否为True,若结果为True执行代码块1,再判断内层if的条件表达式2的结果是否为True,若结果为True执行代码块2。
if语句嵌套指的是if语句内部包含if语句,其格式如下所示:
if语句嵌套,针对if嵌套语句,有两点需要说明:
(1)if语句可以嵌套多层,不仅限于两层。
(2)外层和内层的if判断都可以使用if语句、if-else语句和elif语句。
22,if语句嵌套,课堂练习,上机练习5:
根据年份和月份计算当月天数需求说明根据年份和月份计算当月一共有多少天。
23,验票,安检课堂练习,上机练习6:
模拟乘客进站流程,需求说明火车和地铁的出现极大地方便了人们的出行,为保障民众的行程安全,进站乘坐火车前需先接受安检。
以先验票后安检的车站为例,乘客的进站流程如下:
验票:
已买票?
如果没有车票,不允许进站如果有车票,对行李进行安检。
安检:
携带危险品?
如果携带危险品,不允许上车如果没有携带危险品,顺利进站。
本实例要求编写程序,模拟乘客进站流程。
24,课堂练习,上机练习7:
快递计费系统,需求说明某快递点提供华东地区(编号为01)、华南地区(02)、华北地区(03)的寄件服务,该快递点寄件价目表具体如下表所示。
本实例要求根据寄件价目表编写程序,实现快递计费系统的功能。
25,第四部分,循环语句,for临时变量in可迭代对象:
执行语句1执行语句2.,27,for循环可以对可迭代对象进行遍历。
for循环,foriinrange(3):
print(Hello),28,for循环常与range()函数搭配使用,以控制循环中代码段的执行次数。
for循环,课堂练习,上机练习8:
逢七拍手游戏,需求说明逢7拍手游戏的规则是:
从1开始顺序数数,数到有7或者包含7的倍数的时候拍手。
本实例要求编写程序,模拟逢七拍手游戏,输出100以内需要拍手的数字。
29,课堂练习,上机练习9:
数据加密,需求说明数据加密是保存数据的一种方法,它通过加密算法和密钥将数据从明文显示转换为密文显示。
已知用户的密码均为6位数字,其加密规则如下所示:
获取每位数字的ASCII值;将所有数字的ASCII值进行累加求和;将每位数字对应的ASCII值按照从前往后的顺序进行拼接,并将拼接后的结果进行反转;将反转的结果与前面累加的结果相加,所得的结果即为加密后的密码。
本实例要求编写程序,按照上述加密规则将用户输入的密码加密,并输出加密后的密码。
30,while条件表达式:
代码块,while循环是一个条件循环语句,当条件满足时重复执行代码块,直到条件不满足为止。
31,while循环,首先判断条件表达式的结果是否为True,若结果为True执行while循环中的代码块,然后再次判断条件表达式的结果是否为True,若结果仍为True,则再次执行代码块.直至条件表达式的结果为False时结束循环。
while循环,32,课堂练习,上机练习10:
水果沙拉配料,33,需求说明编写一个循环,提示用户输入一系列的水果沙拉配料,并在用户输入quit时结束循环。
每当用户输入一种配料后,都打印一条消息,说我们会在水果沙拉中添加这种配料。
课堂练习,上机练习11:
公园门票,34,需求说明有家公园根据游客的年龄收取不同的票价:
不到3岁的观众免费;312岁的观众为10元;超过12岁的观众为15元。
请编写一个循环,在其中询问用户的年龄,并指出其票价,并在输入quit时结束循环。
课堂练习,上机练习12:
三个出口,35,需求说明以另一种方式完成上机练习10或练习11,在程序中采取如下所有做法。
在while循环中使用条件测试来结束循环。
使用变量active来控制循环结束的时机。
使用break语句在用户输入quit时退出循环。
课堂练习,登录成功,您还有*次机会,输入正确错误次数3,错误次数=3输入错误次数过多,请稍后再试,上机练习13:
登录系统账号检测,需求说明登录系统一般具有账号密码检测功能,即检测用户输入的账号密码是否正确。
本实例要求编写程序,模拟登录系统账号密码检测功能。
36,第五部分,循环语句嵌套,while条件表达式1:
代码块1.while条件表达式2:
代码块2.,38,while循环中可以嵌套while循环。
while循环嵌套,for临时变量in可迭代对象:
代码块1for临时变量in可迭代对象:
代码块2,39,for循环也可以嵌套使用,其格式如下所示。
for循环嵌套,课堂练习,上机练习14:
九九乘法表,乘法口诀是中国古代筹算中进行乘法、除法、开方等运算的基本计算规则,沿用至今已有两千多年。
40,本实例要求编写程序,实现通过for循环嵌套输出九九乘法表的功能。
第六部分,Python的其他语句,break语句跳出整个循环,continue语句跳出本次循环,42,跳转语句循环语句一般会一直执行完所有的情况后自然结束,但是有些情况下需要停止当前正在执行的循环,也就是跳出循环。
for临时变量in可迭代对象:
执行语句if条件表达式:
代码块break,43,break语句用于跳出离它最近一级的循环,通常与if语句结合使用,放在if语句代码块中。
break语句,while条件表达式:
代码块if条件表达式:
代码块break,44,break语句也可以用于while循环,其格式如下所示:
break语句,forelementin0,-2,5,7,-10:
ifelement=0:
continueprint(element),45,当执行到continue语句时,程序会忽略当前循环中剩余的代码,重新开始执行下一次循环。
continue语句用于跳出当前循环,继续执行下一次循环。
continue语句,若break语句位于循环嵌套结构中,该语句只会跳出离它最近的一级循环,不会影响其它循环的执行。
46,continue语句,Python中的pass是空语句,它的出现是为了保持程序结构的完整性。
pass不做任何事情,一般用作占位语句。
47,pass语句,前面在学习if语句的时候,会在if条件语句的范围之外发现else语句。
其实,除了判断语句,Python中的while和for循环中也可以使用else语句。
在循环中使用时,else语句只在循环完成后执行,也就是说,break语句也会跳过else语句块。
48,else语句,课堂练习,上机练习15:
猴子与桃,49,需求说明公园里有一只猴子和一堆桃子,猴子每天吃掉桃子总数的一半,在剩下一半中扔掉一个坏的。
到第七天的时候,猴子睁开眼发现只剩下一个桃子。
问公园里刚开始有多少个桃子?
课堂练习,猜出很遗憾,你猜大了,猜出很遗憾,你猜小了,猜=出恭喜,猜数成功,上机练习16:
猜数游戏,需求说明猜数游戏是一个益智类小游戏,通常由两人参与,一个人出数字,另一个人猜数字,当猜数字的人说出一个数字时,由出数字的人告知是否猜中。
本实例要求编写程序,实现上述规则的猜数字游戏,并限制猜数机会只有5次。
50,本章主要介绍了Python流程控制,包括if语句、if语句的嵌套、循环语句、循环嵌套以及跳转语句。
其中if语句主要介绍了if语句的格式,循环语句中主要介绍了for循环和while循环,跳转语句主要介绍了break语句和continue语句。
希望通过本章的学习,读者能够熟练掌握Python流程控制的语法,并灵活运用流程控制语句进行程序开发。
本章小结,51,小结,问题及作业,集中问题&课后作业,