1、1.3.3条件语句学习目标1. 了解条件语句的格式及功能.2.体验如何把判断框转化为条件语句.3.通过对条件语句的学习,进一步体会算法的基本思想知识点条件语句思考对于选择结构的算法或流程图,要转化为计算机能够理解的算法语言,只使用输入、输出和赋值语句还行吗?还需要用怎样的语句?答案不行,因为输入、输出、赋值都不会先判断再选择执行,要用与选择结构相适应的条件语句梳理条件语句的结构与功能If A ThenBElseCEnd If其中A表示判断的条件,B表示满足条件时执行的操作内容,C表示不满足条件时执行的操作内容,End_If表示条件语句结束当遇到类似数学中分类讨论的算法时,适用条件语句1If语句
2、中必须有Else和End If.()2If语句中可以没有End If.()3If语句中可以没有Else,但必须以End If结束()4If语句中可以没有End If,但必须有Else.()类型一条件语句和选择结构例1(1)已知如下伪代码,若x6,则其运行的结果是_ReadxIf x10 ThenY0.35xElseY100.35(x10)0.7End IfPrintY答案2.1解析因为x610,所以Y0.3562.1,所以运行的结果为2.1.(2)将如图的伪代码翻译成算法,并画出相应的流程图:ReadxIf x1 Then yxElse y2x1End IfPrinty解伪代码所表示的算法如下
3、:S1输入x;S2如果x1,所以y2519.由2x121,得x11,故输入的x应为11.反思与感悟条件语句与选择结构转化的一般思路(1)明确已知语句或结构的大体框架(2)分清楚各种可能的情况以及每一种可能情况所对应的结论(3)将流程图与伪代码一一对应分别写出跟踪训练1下面是一个使得任意输入2个整数按从大到小的顺序输出的算法:S1输入2个整数a,b;S2若ab,则xa,ab,bx;S3输出a,b;S4结束试把它转化为伪代码解Reada,bIf ab Then xa ab bxEnd IfPrinta,b类型二条件语句的应用例2儿童乘坐火车时,若身高不超过1.1 m,则无须购票;若身高超过1.1
4、m但不超过1.4 m,可买半票;若超过1.4 m,应买全票试设计一个购票的算法,写出伪代码,并画出流程图解购票的算法步骤如下:S1测量儿童身高h;S2如果h1.1,那么免费乘车;否则,如果h1.4,那么购买半票乘车;否则,购买全票乘车用条件语句表示为:ReadhIf h1.1 ThenPrint 免费乘车ElseIf h1.4 ThenPrint 半票乘车ElsePrint 全票乘车End IfEnd If流程图如图:反思与感悟算法中需要判断情况、分类执行时,如判断一个数的正负、比较两个数的大小、求分段函数的函数值等,都需要用到条件语句跟踪训练2写出求实数x的绝对值的一个算法,画出其流程图,并
5、写出对应的伪代码解S1输入一个实数x;S2若x0,则xx,否则,xx;S3输出x.该算法的流程图如图:伪代码如图:ReadxIf x0 ThenxxElsexxEnd IfPrintx类型三条件语句的嵌套例3函数y输入x的值,输出相应的函数值,写出伪代码解伪代码如图所示:ReadxIf x1 Then yxElse If xa Then abEnd IfIf ca Then acEnd IfPrinta也可以是以下伪代码:Reada,b,cIf ba Then abElse If ca Then acEnd IfEnd IfPrinta1给出以下四个问题:输入一个正数x,输出它的算术平方根;求
6、函数f(x)的函数值;求周长为6的正方形的面积;求三个数a,b,c中的最小值其中需要用条件语句来描述其算法的个数为_答案2解析对于,当x取不同范围时,f(x)的解析式不同,因此需分情况讨论,要用到条件语句;对于,要求出最小值,需分情况讨论,要用到条件语句2下面是一个算法的伪代码,如果输入的x的值是10,则输出的y的值是_ReadxIf x5 Theny10xElsey8.5xEnd IfPrinty答案85解析由输入x的值为10,得y8.51085.3阅读下面伪代码:ReadaIf a5 Then b4ElseIf a3 Then b5Elseb9End IfEnd IfPrinta,b如果在
7、运行时,输入2,那么输出的结果是_答案2,5解析输入a的值2,首先判断是否大于5,显然2不大于5,然后判断2与3的大小,显然2小于3,所以结果是b5,因此结果应当输出2,5.4用条件语句表示:输入两个数,输出较大的数解伪代码如图:Reada,bIf ab ThenPrint aElsePrint bEnd If使用条件语句时应注意的问题:(1)条件语句是一个语句,If,Then,Else,End If都是语句的一部分(2)条件语句必须是以If开始,以End If结束,一个If必须与一个End If相对应(3)如果程序中只需对条件为真的情况作出处理,不用处理条件为假的情况时,Else分支可以省略,此时条件语句就由双支变为单支(4)为了程序的可读性,一般If,Else与End If顶格书写,则其他的语句体前面空两格