1、第6课时 条件语句 【知识结构】一般形式条件语句具体应用【学习目标】(1)正确了解条件语句的步骤、结构及功能;(2)能正确地使用条件语句表示选择结构【预学评价】1. 用来实现算法中的选择结构的算法语句叫做条件语句2. 条件语句的一般形式是:If A Then B Else CEnd If3. 执行下面的条件语句,若输入的x的值为2.则输出的y为 2 . Read x If x0 Then yx Else yx End IfPrint y【经典范例】例1.某居民区的物业管理部门每月按以下方法收取卫生费:3人和3人以下的住户,每户收取5元;超过3人的住户,每超出1人加收1.2元试设计算法根据输入的
2、人数计算应收取的卫生费,并写出伪代码。解:若用(单位:元)表示应收取的费用,表示住户的人口数,则具体算法步骤如下:S1 输入;S2 若,则,否则;S3 输出伪代码:Read If Then ElseEnd IfPrint 注:我们把步骤“”称为“Then”分支,步骤“”称为“Else”分支为了醒目和便于阅读这些分支一般缩进书写例2写出输入两个数a和b,将较大的数打印出来的算法,写出伪代码,并画出流程图伪代码:Read a,bIf ab Then Print aElse Print bEnd IfEnd开始输入a,bab结束YN输出a输出b解:算法:S1 输入a,b;S2 若ab,则输出a,否则
3、输出b注:“Else”分支后执行“ab”不成立时的操作,故当a=b时,也是执行“Else”分支。Read tIf t4 Then c=0.2Else c=0.2+0.1(t3)End IfPrint cEnd (第2题)【随堂练习一】1.说出下列算法的结果.Read a,b,cIf a2+b2=c2 thenPrint“是直角三角形!”ElsePrint“非直角三角形!”End if运行时输入3、4、5运行结果为输出:是直角三角形!.2.若输入8时,则下列程序执行后输出的结果是 0.7 。3.某市电力公司为了鼓励居民用电,采用分段计费的方法计算电费:每月用电不超过100度时,按每度0.57元计
4、算;每月用电超过100度时,其中的100度仍按原标准收费,超过部分每度按0.50元计算.问:如何设计一个计算应交电费的算法?解:设月用电x度时,应交电费y元,当x100和x100时,写出y关于x的函数关系式为:y=所以,计算应交电费的算法可以用伪代码表示为Read xIf x100 theny0.57xElsey57+0.5(x100)End IfPrint yEnd例3. 儿童乘坐火车时,若身高不超过1.1 m,则无需购票;若身高超过1.1 m到不超过1.4 m,可买半票;若超过1.4 m,应买全票试设计一个购票的算法,写出伪代码.解:算法步骤为:S1 测量儿童身高;S2 如果,那么免费乘车
5、;否则,如果,那么购买半票乘车;否则,购买全票乘车伪代码: Read If Then Print 免费乘车Else If Then Print 半票乘车ElsePrint 全票乘车End If注:从本例可以看出,条件语句“IfthenElse”可以嵌套例4已知函数,试设计一个计算值算法,写出伪代码。解:可以用条件语句表示这类分段函数的算法:Read x If x0 Then y1Else If x=0 Then y0Else yEnd IfEnd IfPrint y注:条件语句可以进行嵌套,在进行条件语句嵌套时,书写要有层次。【随堂练习二】1 Read x If x5 Then y=3x El
6、se y=2x-1 Endif Endif Print y 输入3,程序运行结果是 5 2. 中国网通规定:拨打市内电话时,如果不超过3分钟,则收取话费0.22元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取通话费,不足一分钟按以一分钟计算。设通话时间为t(分钟),通话费用y(元),如何设计一个程序,计算通话的费用。 解:算法分析:数学模型实际上为:y关于t的分段函数。关系式如下:其中t3表示取不大于t3的整数部分。算法步骤如下:第一步:输入通话时间t;第二步:如果t3,那么y = 0.22;否则判断tZ 是否成立,若成立执行y= 0.2+0.1 (t3);否则执行y = 0.2+0
7、.1( t3+1)。第三步:输出通话费用c 。算法程序如下:Read “请输入通话时间:”;tIf t=0 then yx-1 Else y2x-5 End if Print y 8设计求2x-3的算法,写出伪代码。解:算法: 伪代码: Read If Then Else End If P rint 9.输入3个互不相等的数,写出找出其中一个最大数流程图和伪代码。解:流程图: 伪代码: Read a,b,c If ab,ac Then Print a Else If bc Then Print b Else Print c End If End If10 函数,写出求函数的函数值的程序 解:Read xIf Then y=2xElse If Then y=8Else y=2(12-x)End IfEnd IfPrint y【师生互动】学生质疑老师释疑