1、第2课时 条件结构,1.条件结构 算法的流程根据_是否成立有不同的_,处理这种过程的结构就是条件结构.,条件,流向,2.条件结构程序框图的两种形式及特征,一个,步骤A,【点拨】 (1)对条件结构的两点说明 条件结构的特点是:先判断后执行. 利用条件结构时要注意两点:一是需要判断条件是什么,二是条件判断后分别对应着什么样的结果.,(2)顺序结构与条件结构的异同,【自我检测】 1.下列算法中,含有条件结构的是 ( ) A.求两个数的积 B.求点到直线的距离 C.解一元二次方程 D.已知梯形两底和高求面积,【解析】选C.解一元二次方程时,当判别式0时,方程无解,当0时,方程有解,由于分情况,故用到条
2、件结构.,2.如图是算法程序框图的一部分,其中含条件结构的 是 ( )A. B. C. D.,【解析】选C.是顺序结构,中含有条件结构.,3.下列关于条件结构的描述,不正确的是 ( ) A.条件结构的出口有两个,但在执行时,只有一个出口 是有效的 B.条件结构的判断条件要写在判断框内 C.条件结构只有一个出口 D.条件结构根据条件是否成立,选择不同的分支执行,【解析】选C.条件结构的出口有两个,算法的流程根据条件是否成立有不同的流向.,4.已知函数y=|x-3|,以下程序框图表示的是给定x值,求其相应函数值的算法.请将该程序框图补充完整.其中处应填 ,处应填 .,【解析】由y=|x-3|= 及
3、程序框图知,处应填y=3-x,处应填y=x-3. 答案:y=3-x y=x-3,类型一 条件结构的理解和设计 【典例】1.(2018鹰潭高一检测)判断给出的整数n 是否是偶数,设计程序框图时所含有的基本逻辑结构 是 ( ) A.顺序结构 B.条件结构 C.顺序结构、条件结构 D.以上都不正确,2.(2018信阳高一检测)已知函数y= 试设计一个算法的程序框图,计算输入自变量x的值 时,输出y的值.,【审题路线图】 1.判断给出的整数n是否是偶数判断n是否能被2整除. 2.分段函数求值自变量取不同范围的值时,函数解析式不同.,【解析】1.选C.任何程序框图中都有顺序结构,当n能被2整除时,n是偶
4、数;否则,n不是偶数,所以必须用条件结构来解决.,2.程序框图如图:,【方法技巧】 1.条件结构的适用条件和设计原则 (1)适用条件 如果算法步骤中含有条件的判断,那么设计程序框图时,通常用条件结构来实现.,(2)设计原则 解决这类问题时,首先对问题设置的条件作出判断,设置好判断框内的条件,然后根据条件是否成立选择不同的流向.,2.嵌套结构的应用 (1)条件结构的嵌套是指在一个条件结构的分支内的步骤中又用到条件结构,就像一个条件结构镶嵌在另一个条件结构中一样. (2)在设计程序框图时,程序的流向要多次根据判断作出选择时一般要用到条件结构的嵌套.,【变式训练】1.给出以下四个问题:输入一个数x,
5、 输出它的绝对值;求面积为6的正方形的周长; 求三个数a,b,c中的最大数;求函数f(x)= 的函数值.其中需要用条件结构来描述算法的 有 ( ) A.1个 B.2个 C.3个 D.4个,【解析】选C.都需要对条件作出判断,都需要用条件结构,用顺序结构即可. 2.用程序框图表示解方程ax+b=0(a,b为常数)的算法.,【解析】第一步,输入a,b的值. 第二步,判断a=0是否成立,若成立,则执行第三步; 若不成立,则令x=- ,输出x,结束算法. 第三步,判断b=0是否成立,若成立,则输出“方程的解为R”,结束算法;若不成立,则输出“无解”,结束算法.,程序框图为:,【误区警示】解答本题容易忽
6、视解方程ax+b=0需要分类讨论.实际上,应分(1)a=0,b0; (2)a=0,b=0;(3)a0,三类情况讨论.,【补偿训练】(2018福州高一检测)画出输入一个 数x,求分段函数y= 的函数值的程序框图.,【解析】程序框图如图所示.,类型二 条件结构的读图问题 【典例】1.如图所示的程序框图,其功能是 ( ),A.输入a,b的值,按从小到大的顺序输出它们的值 B.输入a,b的值,按从大到小的顺序输出它们的值 C.求a,b的最大值 D.求a,b的最小值,2.如图是某种算法的程序框图,当输入的x值为log3 时,输出y的结果是 .,【审题路线图】已知条件结构的程序框图明确条件结构的功能、代入
7、求值.,【解析】1.选C.取a=1,b=2知,该程序框图输出b=2,因此是求a,b的最大值.,2.由题知,此算法的程序框图是求分段函数 y= 的值. 因为log3 0,所以当x=log3 时,答案:1,【延伸探究】1.本例2中,当输出的y的值大于2时,则输入的x的取值范围为 .,【解析】若y2, 当x0时,3-x-12,即3-x3, 所以-x1,得x0时, 2,得x4. 综上所述,x的取值范围为(-,-1)(4,+). 答案:(-,-1)(4,+),2.本例2中,当输入的x值为9时,输出y的结果是多少? 【解析】由例2的解析过程可知, 当x=9时,y= =3.,【方法技巧】条件结构读图时应注意
8、的两点 (1)理清所要实现的算法的结构特点和流程规则,分析其功能. (2)结合程序框图判断所要填入的内容或计算所要输出、输入的值.,【补偿训练】判断正整数x的奇偶性的程序框图如图, 则处应为 (只要写出一种正确答案即可).,【解析】框图的功能是判断一个数是奇数还是偶数,关键看能否被2整除,当满足条件时为奇数,所以余数为1,即处可填r=1?. 答案:r=1?(不唯一),类型三 条件结构在实际中的应用 【典例】1.(2018重庆一中高三期中)重庆市乘坐出租车的收费办法如下:,(1)不超过3千米的里程收费10元; (2)超过3千米的里程按每千米2元收费(对于其中不足1千米的部分,若其小于0.5千米则
9、不收费,若其大于或等于0.5千米则按1千米收费); 当车程超过3千米时,另收燃油附加费1元.,相应系统收费的程序框图如图所示,其中x(单位:千米)为行驶里程,y(单位:元)为所收费用,用x表示不大于x的最大整数,则图中处应填 ( ),2.到银行办理个人异地汇款(不超过100万)时,银行要收取一定的手续费.汇款额不超过100元,收取1元手续费;超过100元但不超过5000元,按汇款额的1%收取;超过5000元,一律收取50元手续费,其他情况不予办理.试设计一个算法描述汇款额为x元时,银行收取手续费为y元的过程,并画出程序框图.,【审题路线图】 1.程序框图和出租车的收费方法正确理解x的含义,建立
10、当x3时出租车的收费函数. 2.银行收取手续费的方法建立分段函数,设计程序框图.,【解析】1.选B.由已知中,超过3千米的里程按每千米 2元收费(对于其中不足1千米的部分,若其小于0.5千米 则不收费,若其大于或等于0.5千米则按1千米收费); 当车程超过3千米时,另收燃油附加费1元.可得:当x3 时,所收费用y=10+,2.由题意知本题是一个分段函数问题,分段函数解析式为,其算法如下: 第一步,输入汇款额x. 第二步,判断x100是否成立;若成立,则y=1,转执行第五步,若不成立,则执行第三步. 第三步,判断x5000是否成立;若成立,则y=x1%,转执行第五步,若不成立,则执行第四步.,第
11、四步,判断x1000000是否成立;若成立,则y=50,转执行第五步,若不成立,则输出“不予办理”. 第五步,输出y.,程序框图如图,【方法技巧】利用程序框图解决实际问题的步骤 (1)审题. (2)列式,建立数学模型,将实际问题转化为数学问题. (3)根据所建数学模型,选择适合的逻辑结构,画出程序框图. 提醒:利用条件结构解决实际问题的关键是写出函数解析式.,【变式训练】在新华书店里,某书每本售价29.90元,书店为促销,规定:如果顾客购买5本或5本以上,10本以下则按九折(即26.91元)出售;如果顾客购买10本或10本以上,则按八折(即23.92元)出售.请设计一个完成计费工作的程序框图.
12、,【解析】程序框图如图所示:,【补偿训练】(2018佳木斯高一检测)为了加强居民 的节水意识,某市制定了以下生活用水收费标准:每户每月用水未超过7立方米时,每立方米收费1.0元,并加收0.2元的城市污水处理费;超过7立方米的部分,每立方米收费1.5元,并加收0.4元的城市污水处理费.设某户每月用水量为x立方米,应缴纳水费y元,请你设计一个输入用水量、输出应缴水费额的算法,画出程序框图.,【解析】y与x之间的函数解析式为y= 算法设计如下: 第一步,输入每月用水量x(x0). 第二步,判断输入的x是否超过7,若x7,则应缴纳水费y=1.9x-4.9;否则应缴纳水费y=1.2x. 第三步,输出应缴水费y.,程序框图如图所示:,【核心素养培优区】 【易错案例】根据条件结构求值 【典例】执行如图所示的程序框图,若输出的结果 是8,则输入的x的值是_.,【失误案例】由程序框图知, 解得x=-2 .,【错解分析】分析解题过程,请找出错误之处. 提示:错误的根本原因是忽视了分类讨论,实际上还应考虑x2x3的情况.,【自我纠正】由程序框图知, 解得x=-2 或x=2. 答案:-2 或2,