您好,欢迎访问三七文档
流程图使用的图框起止框输入、输出框处理框判断框流程线AB示意图顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。如在示意图中,A框和B框是依次执行的,只有在执行完A框指定的操作后,才能接着执行B框所指定的操作。1.2.2选择结构问题:某铁路客运部门规定甲、乙两地之间旅客托运行李的费用为,0.53,50500.53(50)0.85,50wwcww其中w(单位:kg)为行李的重量.计算费用c(单位:元)的算法可以用怎样的算法结构来表示?解:其算法为:Sl输入行李的重量w;S2如果w≤50,那么;否则;0.53cw500.53(50)0.85cwS3输出行李重量w和运费c.选择结构的概念把先根据条件作出判断,再决定执行哪一种操作的结构称为选择结构.PABYN注意:(1)无论条件P是否成立,只能执行A或B之一,不能既执行A又执行B,也不能A,B都不执行;但A或B两个框中可以有一个是空的,即不执行任何操作;(2)一个选择结构可以有多个判断框.输入a,b,ca>b,a>c结束YN输出xx←ab>cYx←bx←cN开始例1.设计解一元二次方程ax2+bx+c=0(a≠0)的一个算法,并用流程图表示.解:算法步骤如下:S1输入a,b,c;S2△←b2-4ac;S3若△<0;则输出“方程无实数解”;否则,,输出x1,x2.abx21abx22△<0YN开始输入a,b,c△←b2-4acabxabx2,221注意:输出的文字应加上引号!输出“方程无实数解”输出x1,x2结束例2设计一个算法,任意输入一个x,计算y=|x|,并输出y的数值。解:算法步骤(1)输入x;(2)若x0,则y=-x;(3)若x≥0,则y=x;(4)输出y开始输入xx0y=-x输出y结束y=xYN例3任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的流程图开始输入a,b,ca+b>c,a+c>b,b+c>a是否同时成立?输出“存在这样的三角形”输出“不存在这样的三角形”结束NY练习1.下面流程图表示一个什么样的算法?开始输入a,b,c结束ab且acNYNY输出abc输出c输出b给出一个确定三个数最大值的算法练习2看下面的程序框图,分析算法的作用(1)开始结束输入a,bab?NY输出a,b输出b,a从小到大排列a、b两数开始输入aa≥0输出|a|=a输出|a|=-a结束NY练习3设计求实数a的绝对值的一个算法,并用流程图表示:开始输入xx0y=-x输出y结束y=xYN下面是关于城市居民生活用水收费的问题为了加强居民的节水意识,某市制定了以下生活用水收费标准:每户每月用水未超过7m3时,每立方米收费1.0元,并加收0.2元的城市污水处理费;超过7m3的部分,每立方米收费1.5元,并加收0.4元的城市污水处理费.开始输入xx≤7y=1.2xy=7×1.2+(x-7)×1.9输入y结束YN练习4根据给出的两个流程图,分析:(1)图1所解决的是什么问题?(2)回答:①当输入的x值为1时,输出y的值为多大?②要使输出的y值为8,输入的x值为多大?③输入的x和输出的y能相等吗?图1开始输入x2x22yxx输出y结束YN2y开始输入a,bx-b/a结束图2a=0YN输出“x是方程的根”0b输出“方程无实数根”NY输出“方程根为全体实数”(3)图2所解决的是什么问题?解方程ax+b=0小结:能用流程图表示算法能识别流程图所描述的算法在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.这种先根据条件做出判断,再决定执行哪一种操作的结构成为选择结构(或分支结构)要求回顾反思1.通过本节课的学习,我们掌握了算法框图的选择结构及利用这种结构设计算法流程图。2.选择结构的特点是需要根据对条件的判断结果来决定后面的步骤的结构.练习徐州市出租汽车最新计费标准如下:在3km以内(含3km)路程按起步价7元收费,超过3km以外的路程按2.4元/km收费.试给出一个出租车计费的算法.分析:出租车收费y(元)和行驶里程x(km)之间的函数关系为:解:算法步骤如下:S1输入里程x;S2若x≤3;则y←7,否则y←2.4(x-3)+7;S3输出y.y←7结束输出yy←2.4(x-3)+7开始输入xx≤3YN判断框:判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”.7,(0,3]2.4(3)7,(3,)xyxx变形1:如果没有给出条件a≠0,那么如何设计算法?例1.设计解一元二次方程ax2+bx+c=0(a≠0)的一个算法,并用流程图表示.S1若b=0,则执行S4,否则执行S2;S2bcxS3输出x,结束;S4若c=0,输出“方程有无数个解”,结束,否则输出“方程无解”;输出xNb=0bcxYc=0NY输出“方程有无数个解”输出“方程无解”开始输入a,b,c输出xb=0NbcxYc=0NY输出“方程有无数个解”输出“方程无解”YNa=0结束输出x1,x2△<0YN△←b2-4acabxabx2,221输出“方程无实数解”例1.设计解一元二次方程ax2+bx+c=0(a≠0)的一个算法,并用流程图表示.变形2:如果要输出二次方程根的详细信息,那么又该如何设计算法?S1若△=0;执行S2,否则执行S4;S4;abxabx2,221S3输出“方程两个有相等的解”x,结束;S2;abx2S5输出“方程有两个不相等的解”x1,x2,结束;△←b2-4ac输出x1,x2△<0YNabxabx2,221输出“方程无实数解”△=0YNabxabx2,221abx2输出“方程两个有相等的解”x输出“方程有两个不相等的解”x1x2△=0YNabxabx2,221abx2输出“方程两个有相等的解”x输出“方程有两个不相等的解”x1x2开始输入a,b,c结束输出xb=0NbcxYc=0NY输出“方程有无数个解”输出“方程无解”a=0YN△<0YN△←b2-4ac输出“方程无实数解”一个判断结构可以有多个判断框,就是说:选择结构可以嵌套.例2若有A、B、C三个不同大小的数字,你能设计一个算法,找出其中的最大值吗?试给出解决问题的一种算法,并画出流程图。解:应该先两两比较,算法和流程图如下:S1输入A、B、C;S2如果A>B,那么转S3,否则转S4;S3如果A>C,那么输出A,转S5,否则输出C,转S5;S4如果B>C,那么输出B,转S5,否则输出C;S5结束。开始结束输入A,B,CABACBCYYYNNN输出C输出B输出A
本文标题:流程图使用的图框
链接地址:https://www.777doc.com/doc-1043935 .html