还剩10页未读,
继续阅读
所属成套资源:粤教版信息技术必修1数据与计算PPT课件整套
成套系列资料,整套一键下载
4.3运用选择结构描述问题求解过程-【新教材】粤教版(2019)高中信息技术必修一课件
展开
4.3运用选择结构描述问题求解过程 单选编写一个行李托运费用的程序:50(包含50)千克以内的每千克的费用是0.5元,大于50千克的超出部分每千克0.8元,如何解决?一、导入问题 单选设费用为n①输入行李的重量a②如果50>=a,那么 n=a*0.5;否则,n=50*05+(a-50)*0.8,输出n③结束1.分析问题、设计算法这个问题非常简单,我们可以直接写出如下算法:2.用流程图来描述YN通过流程图,我们可以得出若编写程序,需要用哪种基本控制结构?开始输入行李a的值50>=a?输出n结束n=a*0.5if 语句的应用在程序设计中,主要使用条件语句(if语句)来实现判断和选择。单分支if语句格式:if (条件表达式): 语句A①if(条件表达式)后面加冒号“:”②当语句A是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进。执行过程: 单选练习a=int(input( ))b=int(input( ))x=a+bif a>b: x=a-bprint(x)若从键盘上输入3和4,那么x的值是()A 3 B 5 C 7 D 9 单选若用单分支if语句如何解决托运行李的程序?算法如何修改?算法:①输入行李重量a②如果50>=a,n=a*0.5③如果50=a: n=a*0.5if 50b: else: 单选若用双分支if语句如何解决托运行李的程序?算法:①输入行李重量a②如果50>=a,n=a*0.5;否则,n=25+(a-50)*0.8,输出n③结束程序:a=eval(input( ))if 50>=a: n=a*0.5else: n=25+(a-50)*0.8print(n)编写一个行李托运费用的程序:50(包含50)千克以内的每千克的费用是0.5元,大于50千克小于等于100千克的超出部分每千克0.8元,大于100千克每千克1.1元。如何解决?增加难度用单、双分支if语句都可以解决吗?算法:①输入a②如果50>=a,n=a*0.5③如果a>50且a<=100, n=25+(a-50)*0.8④如果a>100⑤n=25+40+(a-100)*1.1程序:a=eval(input( ))if 50>=a: n=a*0.5if a>50 and a<=100: n=25+(a-50)*0.8if a>100: n=25+40+(a-100)*1.1print(n)if...elif...else 语句的应用应用if条件语句可以快速地实现程序的分支选择,但当分支比较多时,用if...elif...else语句来实现比较简便格式:if (表达式1): 语句1elif(表达式2): 语句2 ......elif(表达式n): 语句nelse: 语句n+1if...elif...else 语句的应用应用if条件语句可以快速地实现程序的分支选择,但当分支比较多时,用if...elif...else语句来实现比较简便 单选用多分支if语句来解决行李问题算法:①输入a②如果50>=a, 那么n=a*0.5否则,若a>50且a<=100,那么,n=25+(a-50)*0.8否则,n=25+40+(a-100)*1.1③输出n④结束 单选用多分支if语句来解决行李问题增加难度程序:a=eval(input( ))if a<=50: n=a*0.5elif a>50 and a<=100: n=25+(a-50)*0.8if c>n:else: n=25+40+(a-100)*1.1print(n)print(n)下面这个流程图可以用多分支if语句来解决问题吗?思考题:输入三个数a,b,c,输出其中最大的那个数。请问解决此问题有多少种算法?请用用两种方法编程解决此问题。作业:Thank you !
相关资料
更多