1、算法初步第一章12基本算法语句12.2条件语句课前自主预习 1理解条件语句的格式及功能2体验如何把判断框转化为条件语句3通过条件语句的学习,进一步体会算法的基本思想1条件语句(1)条件语句的格式、功能及与条件结构的对应关系(2)两种条件语句的区别与联系 2.条件语句的嵌套和叠加(1)条件语句的嵌套IF 条件1 THEN 语句体1ELSE IF 条件2 THEN语句体2 ELSE 语句体3 END IFEND IF 条件语句嵌套的实质将外层条件语句中的分支语句再设计成一个条件语句温馨提示:在条件语句中的嵌套中,每一个“IF”对应着一个“END IF”,注意书写格式(2)条件语句的叠加其程序框图如
2、图其语句格式如下:IF 条件1 THEN 语句体1END IFIF 条件2 THEN 语句体2END IFIF 条件3 THEN语句体3END IF温馨提示:从表达形式上看,条件语句嵌套中内层的每一个条件语句在它上层条件语句的一个分支里面,上层条件语句中的“END IF”要在内层条件语句之后;而条件语句叠加中每一个条件语句是一个独立的整体,在下一个条件语句之前要加上“END IF”判断正误(正确的打“”,错误的打“”)(1)条件语句与程序框图中的循环结构相对应()(2)条 件 语 句 中 的 单 词“THEN”“ELSE”可 以 理 解 为“那么”“否则”的意思()(3)条件语句中必须有 EL
3、SE 和 END IF.()(4)条件语句中可以没有 ELSE,但是必须有 END IF.()提示(1)(2)(3)(4)条件语句与程序框图中的条件结构相对应,(1)错;(2)对;条件语句有 2 种不同的格式,一种格式中没有 ELSE,但两种格式都有 END IF,故(3)错;(4)对.课堂互动探究 题型一条件语句与条件结构【典例 1】已知函数 f(x)x21,x0,2x25,x0,对任意的 x,求函数值,请画出程序框图并写出程序语句解 程序框图如图所示:程序如下:两种语句的选择方法(1)要解决的问题,如果只需要对满足条件时的情况作出处理,不需要处理不满足条件时的情况,那么就选用 IFTHEN
4、END IF 条件语句(2)要解决的问题,如果既需要解决满足条件时的情况,又需要解决不满足条件时的情况,那么应选用 IFTHENELSEEND IF 条件语句针对训练 1 根据下面的程序框图写出程序语句解 程序框图所实现的算法功能是:求任意一个实数 a 的立方的绝对值程序如下:题型二条件语句的应用【典例 2】(1)已知下列程序,当输入 x2 时,输出的结果是_(2)编写程序,使得任意输入2个整数按从大到小的顺序输出 解 析 (1)由 程 序 可 知 其 功 能 是 求 函 数f(x)x21,x0,2x25,x0,的函数值,所以 f(2)2(2)253.(2)算法:第一步,输入 2 个整数 a,
5、b.第二步,若 ab,则 xa,ab,bx.第三步,输出 a,b.第四步,结束程序:INPUT“a,b”;a,bIF ab THEN xa ab bxEND IFPRINT“a,b”;a,bEND答案(1)y3(2)见解析引申探究 1:如果典例 2(1)中输入 x3,求输出的结果是什么?解 该程序的功能是求函数 f(x)x21,x0,2x25,x0,的函数值,故 f(3)3218,即输出的结果是 y8.引申探究 2:如果典例 2(1)中输出的 y3,那么输入的 x 是多少?解 当 x0 时,x213,解得 x2(x2 舍去);当 x10,编写程序,输入 x 的值,输出相应的 y 的值解 程序如
6、下:题型三条件语句的叠加【典例 3】已知分段函数 yx1,x0,编写程序,要求输入自变量 x 的值,输出相应的函数值,并画出程序框图解 程序框图如图所示:程序如下:(1)适用范围:已知分段函数的解析式求函数值的问题,须用条件语句书写程序,当条件的判断有两个以上的结果时,可以选择条件结构叠加去解决(2)解此类问题的步骤构思出解决问题的一个算法(可用自然语言)画出程序框图,形象直观地描述算法根据框图编写程序,即逐步把框图中的算法步骤用算法语句表达出来针对训练 3 已知 a,b,c 三个实数中,有且只有一个负数,画出程序框图,设计一个程序,筛选出这个负数解 程序框图如图程序如下:INPUT“a,b,
7、c”;a,b,cIF a0 THEN PRINT aELSE IF b0 THEN PRINT bELSEPRINT cEND IFEND IFEND课堂归纳小结1使用条件语句时应注意的问题(1)条件语句是一个语句,IF,THEN,ELSE,END IF 都是语句的一部分(2)条件语句必须是以 IF 开始,以 END IF 结束,一个 IF 必须与一个 END IF 相对应(3)如果程序中只需对条件为真的情况作出处理,不用处理条件为假的情况时,ELSE 分支可以省略,此时条件语句就由双支变为单支(4)为了程序的可读性,一般 IF、ELSE 与 END IF 顶格书写,其他的语句体前面则空两格2对于三段或三段以上的分段函数求函数值时,需要条件语句的嵌套结构在编写条件语句的嵌套中的“条件”时,要注意“IF”与“END IF”的配对,通常可以利用文字的缩进来表示嵌套的层次,以帮助我们对程序的阅读和理解3条件语句的嵌套,其一般形式是 请做:随堂巩固验收