《第2课时条件结构》由会员分享,可在线阅读,更多相关《第2课时条件结构(28页珍藏版)》请在金锄头文库上搜索。
1、第2课时 条件结构1 1进一步熟悉程序框图的画法进一步熟悉程序框图的画法. .( (重点)重点)2 2掌握条件结构程序框图的画法掌握条件结构程序框图的画法. .(重点)(重点)3 3体会条件结构程序框图的作用,并会简单应用体会条件结构程序框图的作用,并会简单应用. .终端框终端框(起止框)(起止框) 输入、输输入、输出框出框 处理框处理框 (执行框)(执行框) 判断框判断框 流程线流程线 连接点连接点 步骤步骤n n步骤步骤n+1n+1顺序结构顺序结构 在一个算法中,经常会遇到一些在一个算法中,经常会遇到一些条件的判断条件的判断,算法,算法的流程根据条件的流程根据条件是否成立是否成立有不同的流
2、向有不同的流向 例如在上一节课中,我们做过一个求三角形的面积例如在上一节课中,我们做过一个求三角形的面积的流程,其实那个流程是有问题的的流程,其实那个流程是有问题的. .因为当输入了因为当输入了a a,b b,c c三个数值后,我们不知道它们是否可以组成三角形,所三个数值后,我们不知道它们是否可以组成三角形,所以应该先作一个判断,如果是三角形,则继续去计算面以应该先作一个判断,如果是三角形,则继续去计算面积;如果不是三角形,则输出错误信息积;如果不是三角形,则输出错误信息. .算法的条件结构算法的条件结构 在算法的程序框图中,由若干个在一定条件下才会在算法的程序框图中,由若干个在一定条件下才会
3、被执行的步骤组成的逻辑结构,称为被执行的步骤组成的逻辑结构,称为条件结构条件结构,用程序,用程序框图可以表示为下面两种形式:框图可以表示为下面两种形式:满足条件?满足条件?步骤步骤A A步骤步骤B B是是否否满足条件?满足条件?步骤步骤A A是是否否你如何理解这两种程序框图的共性和个性?你如何理解这两种程序框图的共性和个性? 1 1此结构中包含此结构中包含一个判断框一个判断框,根据给定的条件是否成立而,根据给定的条件是否成立而选择执行步骤选择执行步骤A A、步骤、步骤B B或不执行步骤或不执行步骤. .2 2一个判断结构可以有多个判断框一个判断结构可以有多个判断框. .3 3在许多算法中,需要
4、对问题的条件作出逻辑判断,判断在许多算法中,需要对问题的条件作出逻辑判断,判断后依据条件是否成立而进行不同的处理方式,这就需要用后依据条件是否成立而进行不同的处理方式,这就需要用条件结构来实现算法条件结构来实现算法. .例例1.1.任意给定任意给定3 3个正实数,设计一个算法,判断以这个正实数,设计一个算法,判断以这3 3个正实个正实数为三条边边长的三角形是否存在,并画出这个算法的程序数为三条边边长的三角形是否存在,并画出这个算法的程序框图框图. .第一步,第一步,输入三个正实数输入三个正实数a a,b b,c.c.第二步,第二步,判断判断a+bca+bc,b+cab+ca,c+ab c+ab
5、 是否同时成立是否同时成立. .若是,若是,则存在这样的三角形;否则,不存在这样的三角形则存在这样的三角形;否则,不存在这样的三角形. .开始开始输入输入a a,b b,c ca+bca+bc,b+cab+ca,c+abc+ab是否同时成立?是否同时成立?是是 存在这样的三存在这样的三 角形角形结束结束否否 不存在这样的不存在这样的 三角形三角形程序框图程序框图设计设计一个算法的程序框一个算法的程序框图图的基本思路:的基本思路:第一步,第一步,用自然用自然语语言表述言表述算法步算法步骤骤。第二步,第二步,确定每个算法步确定每个算法步骤骤所包含的所包含的逻辑结逻辑结构,并用相构,并用相应应的程序
6、框的程序框图图表示。表示。 第三步,第三步,将所有步将所有步骤骤的程序框的程序框图图用流程用流程线连线连接起来,并接起来,并加上两个加上两个终终端框。端框。小结:小结:例例2 2设计一个求解一元二次方程设计一个求解一元二次方程axax2 2+bx+c=0+bx+c=0的算法,并的算法,并画出程序框图表示画出程序框图表示. .算法分析:算法分析:第一步,第一步,输入三个系数输入三个系数a a,b b,c.c.第二步,第二步,计算计算=b=b2 24ac.4ac.第三步,第三步,判断判断0 0是否成立是否成立. .若是,则计算若是,则计算 ;否则;否则, , 输出输出“方程没有实数根方程没有实数根
7、”,结束算法,结束算法. .第四步,第四步,判断判断=0=0是否成立是否成立. .若是,则输出若是,则输出x x1 1=x=x2 2=p;=p;否则,否则,计算计算x x1 1=p+q=p+q,x x2 2=p-q=p-q,并输出,并输出x x1 1,x x2 2. .程序框图程序框图=b=b2 24ac4ac0?0?是是否否输入输入a,b,ca,b,c开始开始1 12 2输出输出x x1 1,x,x2 2=0?=0?是是否否输出输出“方程没有实数根方程没有实数根”结束结束x x2 2=p-q=p-q1 12 2x x1 1=p+q=p+q输出输出p p若若f(x)=af(x)=ax x(a0
8、,a1)(a0,a1),定义由框图表述的运算如图所示,定义由框图表述的运算如图所示( (函数函数f f-1-1(x)(x)是函数是函数f(x)f(x)的反函数的反函数) ),若输入,若输入x=-2x=-2时,输时,输出出 则输入则输入x= x= 时,输出时,输出y=_.y=_.?分析:分析:根据已知条件结合程序框图代入数据求得根据已知条件结合程序框图代入数据求得. .解:解:x=-2x=-2时,时,a=2.fa=2.f-1-1(x)=log(x)=log2 2x,x,当当x= x= 时时,y=-3.,y=-3.答案:答案:-3-3例例3 3设火车托运重量为设火车托运重量为P(kg)P(kg)的
9、行李时,每千米的费用的行李时,每千米的费用( (单位:单位:元元) )标准为标准为画出计算行李托运费用的程序框图画出计算行李托运费用的程序框图. .解:解:先输入托运的重量先输入托运的重量P P和里程和里程D D,再分别用各自条件下的计,再分别用各自条件下的计算公式来计算处理算公式来计算处理. .然后将结果与托运路程然后将结果与托运路程D D相乘,最后输出托运行李的费用相乘,最后输出托运行李的费用M.M.否否是是开始开始输入输入P P、D DP30P30? ?Y=0.3Y=0.330+0.5(P30+0.5(P30)30)Y=0.3PY=0.3PM=DM=DY Y输出输出M M结束结束1.1.
10、条件结构不同于顺序结构的特征是含(条件结构不同于顺序结构的特征是含( )(A)(A)处理框处理框(B)(B)判断框判断框 (C)(C)输入、输出框输入、输出框 (D)(D)起、止框起、止框B BA A2.2.下边的程序框图(如图所示),能判断任意输入的数下边的程序框图(如图所示),能判断任意输入的数x x的奇偶性,其中判断框内的条件是(的奇偶性,其中判断框内的条件是( )(A) m=0? (A) m=0? (B) x=0?(B) x=0?(C) x=1? (C) x=1? (D) m=1?(D) m=1?3.3.某某算算法法的的程程序序框框图图如如图图所所示示,则则输输出出量量y y与与输输入
11、入实实数数x x满足的关系式是满足的关系式是_._.?解:由题意知,程序框图表达的是一个分段函数解:由题意知,程序框图表达的是一个分段函数答案答案: :4.4.如果考生的成绩大于或等于如果考生的成绩大于或等于6060分,则输出分,则输出“及格及格”,否,否则输出则输出“不及格不及格”,用程序框图表示这一算法的过程,用程序框图表示这一算法的过程. .输入输入xx60?是是否否开始开始结束结束输出输出“及格及格”输出输出“不及格不及格”解:程序框图如图所示解:程序框图如图所示5.5.下面的程序框图表示了一个什么样的算法?下面的程序框图表示了一个什么样的算法?解:所给程序框图描述了求三个数解:所给程
12、序框图描述了求三个数a,b,ca,b,c的最大数的算法的最大数的算法. . 输出输出b否否是是否否是是ab且且 输入输入a,b, cbc? 输出输出a 输出输出c 开始开始结束结束ac?m=0?261、程序框由什么组成?基本的程序框有哪些?、程序框由什么组成?基本的程序框有哪些?总结提升:总结提升:其中起止框是任何程序框图不可缺少的,而输入框、输出框其中起止框是任何程序框图不可缺少的,而输入框、输出框可以用在算法中任何需要输入、输出的位置可以用在算法中任何需要输入、输出的位置2、什么情况要用到条件结构?、什么情况要用到条件结构?分类讨论时要做到不重复、不遗漏分类讨论时要做到不重复、不遗漏3、条
13、件结构不同于顺序结构的地方是什么?、条件结构不同于顺序结构的地方是什么?条件结构还是依次执行的,而是依据条件作出逻辑判断,选条件结构还是依次执行的,而是依据条件作出逻辑判断,选择执行不同指令中的一个。择执行不同指令中的一个。1 1条件结构的概念:条件结构的概念:先根据条件作出判断,再决定执行哪一种操作的结先根据条件作出判断,再决定执行哪一种操作的结构称为条件结构构称为条件结构2 2理解条件结构的逻辑以及框图的规范画法,条件结构理解条件结构的逻辑以及框图的规范画法,条件结构主要用在判断、分类或分情况的问题主要用在判断、分类或分情况的问题的的解决中解决中勇敢是一种斗争精神.面对邪恶、困难,一个勇敢者必须毫不畏惧地去斗争,去拼搏.