资源描述:
《1.2.2选择结构》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、流程图:是由一些图框和流程线组成的,其中图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后次序。流程图的概念知识回顾顺序结构及框图表示1.顺序结构:像上面这种算法是依次进行多个处理的结构称为顺序结构.语句A语句B2.顺序结构的流程图顺序结构是最简单、最基本的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.它是由若干个处理步骤组成的,这是任何一个算法都离不开的基本结构.3.画顺序结构程序框图时注意事项左图中,语句A和语句B是依次执行的,只有在执行完语句A指定的操作
2、后,才能接着执行语句B所指定的操作.(1)在程序框图中,开始框和结束框不可少;(2)在算法过程中,第一步输入语句是必不可少的;(3)顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤.开始I1S0I≤5?是SS+III+1否输出S结束表示算法的开始或结束,常用圆角矩形表示起止框处理框表示赋值或计算,通常画成矩形表示执行步骤的路径可用箭头线表示判断框流程线根据条件决定执行两条路径中的某一条,一般画成菱形输入、输出框表示输入、输出操作,一般画成平行四边形框尽管不同的算法千差
3、万别,但它们都是由三种基本的逻辑结构构成的,这三种逻辑结构就是顺序结构、选择结构、循环结构.下面分别介绍这三种结构.从上面的程序框图中,不难看出以下三种不同的逻辑结构.I1S0SS+III+1I≤5?否是是否I≤5?输出S引入某铁路客运部门规定甲、乙两地之间旅客托运行李的费用为其中w(单位:kg)为行李的重量.●计算费用c(单位:元)的算法可以用怎样的算法结构来表示?S1输入行李的重量w;S2若w≤50,则c←0.53×w,否则c←50×0.3+(w-50)×0.85;S3输出行李重量w和托运
4、费c.c←0.53×w结束输出w,cc←50×0.53+(w-50)×0.85开始输入ww≤50YN判断框:判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”.分析:为了计算行李的托运费,应先判断行李的重量是否大于50kg,然后再选用相应的公式进行运算。其算法为:在上述算法过程中,S2进行了判断,那么这是一种什么结构呢?1.2.2选择结构选择结构先根据条件作出判断,再决定执行哪一种操作的结构.(也称分支结构)右图此结构中包含一个判断框,根据给定的条件P是否成立而选择执行A
5、框或B框.无论P条件是否成立,只能执行A框或B框之一,不可能同时执行A框和B框,也不可能A框、B框都不执行.练习某市出租汽车最新计费标准如下:在3km以内(含3km)路程按起步价8元收费,超过3km以外的路程按2.4元/km收费.试给出一个出租车计费的算法.分析:出租车收费y(元)和行驶里程x(km)之间的函数关系为:解:算法步骤如下:S1输入里程x;S2若x≤3;则y←8,否则y←2.4(x-3)+8;S3输出y.y←8结束输出yy←2.4(x-3)+8开始输入xx≤3YN判断框:判断某一条件是否成立
6、,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”.已知函数,写出求对应的函数值的一个算法,并画出流程图S1输入x0S2若x0≥0,则yx0;否则y-x0是程序框图:开始输入xx≥0?否结束输出yy-xyx已知函数,写出求对应的函数值的一个算法,并画出流程图S1输入x0S2若x0≥0,则输出x0;否则x0-x0是程序框图:开始输入xx≥0?否结束输出XX-x试给出求解一元二次方程x2-2x-3=0的一个算法.第一步移项,得x2-2x=3;第二步将第一步的结果两边加1配方,得(x-1)2=4;
7、第三步将第二步的结果两边开方,得x-1=2,或x-1=-2;第四步解得x=3,或x=-1.第一步求△=b2-4ac=16;第二步将a=1,b=-2,c=-3代入求根公式,解得x=3,或x=-1.______请给出算法二的流程图.例.设计解一元二次方程ax2+bx+c=0(a≠0)的一个算法,并用流程图表示.解:算法步骤如下:S1输入a,b,c;S2△←b2-4ac;S3若△<0;则输出“方程无实数解”,否则,,输出x1,x2.输出x1,x2△<0结束YN开始输入a,b,c△←b2-4ac注意:输出的文字
8、应加上引号!输出“方程无实数解”探究一:如果没有给出条件a≠0,那么如何设计算法?例.设计解一元二次方程ax2+bx+c=0(a≠0)的一个算法,并用流程图表示.S1若b=0,则执行S4,否则执行S2;S2S3输出x,结束;S4若c=0,输出“方程有无数个解”,结束,否则输出“方程无解”;输出xNb=0Yc=0NY输出“方程有无数个解”输出“方程无解”开始输入a,b,c输出xb=0NYc=0NY输出“方程有无数个解”输出“方程无解”YNa=