《(高职)3.2 分支(选择)结构程序设计ppt课件.pptx》由会员分享,可在线阅读,更多相关《(高职)3.2 分支(选择)结构程序设计ppt课件.pptx(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、3.2 分支(选择)结构程序设计Python 程序设计丁辉丁辉 商俊燕商俊燕 范晓玲范晓玲第三章 开始Python程序设计u3.1 顺序结构程序设计顺序结构程序设计u3.2 分支(选择)结构程序设计分支(选择)结构程序设计u3.3 循环结构程序设计循环结构程序设计u小结小结3.2 分支(选择)结构程序设计4在进行程序设计时,需要根据条件编写不同的处理程序,实现用户的需求,如银行自动柜员机,当正确输入密码后,会出现多个选项,当用户选择某个选项后,自动进入相应的功能界面。这类程序就是分支(选择)结构程序。1. 分支结构程序根据什么进行选择向左还是向右?表达式就是用运算符将运算量连接起来的式子。5l
2、 算术表达式 3 + 5 * 8390628 type( 3 + 5 * 8)l 关系表达式 a = 6 b = 8 a b,a type(a b) 1 8 #等价于18False2. 表达式l 逻辑表达式 a and b8 type(a and b)l 成员测试表达式 x = 1,2,4 y = 7 z = 2 y in xFalse z in xTrue3.2 分支(选择)结构程序设计6l同一性测试表达式 x = 1,2,3 y = (1,2,3) z = 4,eyru k = y x is yFalse z is xFalse k is yTrue同一性测试是检查两个变量是否指向同一个实
3、例。可以用id(对象)命令查看某个对象的内存地址。 id(x)52006856 id(y)52072592 id(z)52138568 id(k)520725922. 表达式l复杂表达式判断一个年份是否是闰年的表达式为:year%4 = 0 and year % 100 != 0 or year % 400 = 0 判断大于50岁的女性表达式为:年龄 50 and 性别 = 女y和k地址相同,所以k is y为True3.2 分支(选择)结构程序设计如取出如取出378的每的每一位数字一位数字lif 语句格式if 表达式:语句块lif语句的执行当表达式的值为True或者其它等价值(非空/0)时,
4、表示条件满足,则语句块将被执行,否则该语句块不被执行。l应用示例【例3-4】求x的绝对值。73.单分支结构程序设计开始开始输出输出x结束结束输入数据:输入数据:xx0?x0?x=-xx=-xYN#eg3_4.pyx = float(input(“please input a number:”)if x =60? YN输入分数输入分数score3.2 分支(选择)结构程序设计10(3)编写程序#eg3_5.py#学生分数通过与否判断程序score = float(input(“请输入分数:”)if score = 60: print(“passed”)else: print(“failed”)3
5、.2 分支(选择)结构程序设计115.多分支结构程序设计l多分支if语句格式if 表达式A:语句块Aelif 表达式B:语句块Belif 表达式C:语句块Celse:语句块Nl多分支if语句的执行首先计算表达式A,如果其值为True或者其它等价值时,则执行语句块A;否则计算表达式B,如果其值为True或者其它等价值时,则执行语句块B;否则计算表达式C,如果其值为True或者其它等价值时,则执行语句块C;依次类推,如果所有表达式计算的结果都为False(空值/0),则执行else后的语句块N。3.2 分支(选择)结构程序设计125.多分支结构程序设计表达式表达式A语句块语句块A语句块语句块BFa
6、lseTrue表达式表达式B表达式表达式CFalseFalse语句块语句块C语句块语句块NFalseTrueTrueTrue3.2 分支(选择)结构程序设计13【例3-6】请编程实现100分制成绩转换为A、B、C、D、E五级等级制成绩。100分制与五级等级制的对应关系为:90分及以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。(1)根据IPO模式分析如下I(输入数据):一个输入数据,学生的成绩。O(输出结果):A、B、C、D、E中的一个。P(处理过程(算法):90分及以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。(2)算法设计(流程图)5.
7、多分支结构程序设计3.2 分支(选择)结构程序设计145.多分支结构程序设计score=90?score=90?grade=Agrade=BFalseTruescore=80?score=80?score=70?score=70?FalseFalsegrade=Cscore=60?score=60?grade=EFalseTrueTruegrade=DTrue输入成绩输入成绩score开始开始输出等级输出等级grade结束结束3.2 分支(选择)结构程序设计155.多分支结构程序设计(3)编写程序#eg3_6.py#100分制与五级等级制成绩的转换score = float(input(请输入
8、成绩:)if score = 90: grade = Aelif score = 80: grade = Belif score = 70: grade = Celif score = 60: grade = Delse: grade = E print(等级为:,grade)3.2 分支(选择)结构程序设计166. 多分支结构应用示例【例3-7】全国某等级考试的等级是这样规定的,如果分数是90及其以上的,则为优秀,如果是大于等于60,小于90,则为合格,小于60,则为不合格。请编程,根据输入的分数,确定考试的最后等级。(1)根据IPO模式分析如下I(输入数据):一个输入数据,学生考试的分数。
9、O(输出结果):优秀、合格、不合格其中之一。P(处理过程(算法):90分及以上为优秀,6089分为合格,60分以下为不合格。(2)算法设计(流程图)3.2 分支(选择)结构程序设计176. 多分支结构应用示例score=90score=90? ?grade=优秀优秀grade=合格合格FalseTruescore=60score=60? ?Falsegrade=不合格不合格True输入分数输入分数score输出等级输出等级结束结束开始开始3.2 分支(选择)结构程序设计186. 多分支结构应用示例(3)编写程序#eg3_7.py#某等级考试成绩判定score = float(input(“请输入考试分数:)if score = 90: grade = 优秀elif score = 60: grade = 合格else: grade = 不合格 print(等级为:,grade)3.2 分支(选择)结构程序设计196. 多分支结构应用示例3.2 分支(选择)结构程序设计score=60?grade=不合格不合格grade=优秀优秀FalseTruescore=90?Falsegrade=合格合格True开始开始输入分数输入分数score输出等级输出等级结束结束