程序框图课件.ppt
1 1算法的另外一种表现形式程序框图2 算法是由一系列明确和有限的步骤算法是由一系列明确和有限的步骤组成的,我们可以用自然语言表述一组成的,我们可以用自然语言表述一个算法,但往往过程复杂,缺乏简洁个算法,但往往过程复杂,缺乏简洁性,因此,我们有必要探究使算法表性,因此,我们有必要探究使算法表达得更加直观、准确的方法,这个想达得更加直观、准确的方法,这个想法可以通过法可以通过程序框图程序框图来实现来实现.3 程序框图又称流程图程序框图又称流程图,是一种用程序框、流程线是一种用程序框、流程线及文字说明来表示算法的图形及文字说明来表示算法的图形.程序框图是算法的一程序框图是算法的一种表示形式种表示形式,也就是说也就是说,算法可以用算法步骤表示算法可以用算法步骤表示,也也可以用程序框图表示可以用程序框图表示.程序框图的概念程序框图的概念4图形符号名称代表的操作输入/输出数据的输入与输出处理各种形式的数据处理判断判断选择,根据条件满足与否选择不同路径起止流程的起点与终点流程线连接各个图框,表示执行顺序连接点表示与流程图其他部分相连接5程序框图的基本符号程序框图的基本符号 (1 1)起止框)起止框:起止框是任何流程图都不可缺少的,它表示一个算法起止框是任何流程图都不可缺少的,它表示一个算法的开始和结束,所以一个完整的流程图的首末两端必须的开始和结束,所以一个完整的流程图的首末两端必须是起止框是起止框.(2 2)输入、输出框:)输入、输出框:表示一个算法输入和输出的信息,它可用在算法中的表示一个算法输入和输出的信息,它可用在算法中的任何需要输入、输出的位置任何需要输入、输出的位置.6(3 3)处理框:)处理框:它是用来赋值、执行计算语句、传送运算结果的图形符号它是用来赋值、执行计算语句、传送运算结果的图形符号.(4 4)判断框:)判断框:判断框一般有一个入口和两个出口,有时也有多个出口,判断框一般有一个入口和两个出口,有时也有多个出口,它是惟一的具有两个或两个以上出口的符号它是惟一的具有两个或两个以上出口的符号,判断某一条,判断某一条件是否成立件是否成立,成立时在出口处标明成立时在出口处标明“是是”或或“Y Y”,不成立,不成立时标明时标明“否否”或或“N N”.(5)(5)流程线流程线:用于连接程序框图用于连接程序框图 7第一步,输入三角形三条边的边长第一步,输入三角形三条边的边长a a,b b,c.c.第四步,输出第四步,输出S.S.例例1:1:若一个三角形的三条边长分别为若一个三角形的三条边长分别为a a,b b,c c,令令 ,则三角形的面积,则三角形的面积这个公式被称为海伦这个公式被称为海伦-秦九韶公式,请利用这个公式设秦九韶公式,请利用这个公式设计一个计算三角形面积的算法,并画出程序框图表示计一个计算三角形面积的算法,并画出程序框图表示.第二步,计算第二步,计算 .第三步,计算第三步,计算 .8上述算法的程序框图如何表示?上述算法的程序框图如何表示?开始开始结束结束输出输出S S输入输入a a,b b,c c9 回顾回顾:“判断整数判断整数n n(n2n2)是否为质数)是否为质数”的算法步的算法步骤如何?骤如何?第一步第一步,给定一个大于,给定一个大于2 2的整数的整数n n;第二步第二步,令,令i=2i=2;第三步第三步,用,用i i除除n n,得到余数,得到余数r r;第四步第四步,判断,判断“r=0r=0”是否成立是否成立.若是,则若是,则n n不是不是质数,结束算法;否则,将质数,结束算法;否则,将i i的值增加的值增加1 1,仍用,仍用i i表表示;示;第五步第五步,判断,判断“i(n-1)i(n-1)”是否成立,若是,则是否成立,若是,则n n是质数,结束算法;否则,返回第三步是质数,结束算法;否则,返回第三步.10 我们将上述算我们将上述算法用右边的图形法用右边的图形表示:表示:输输出出“n n是是质质数数”输出输出“n n不是质数不是质数”i i的值增加的值增加1 1,仍用,仍用i i表示表示开始开始r=0r=0?求求n n除以除以i i的余数的余数r ri=2i=2输入输入n nin-1in-1或或r=0r=0?是是是是结束结束否否否否11 在这个程序框在这个程序框图中,其中的多图中,其中的多边形就是程序框,边形就是程序框,带方向箭头的线带方向箭头的线就是流程线就是流程线.开始开始r=0r=0?求求n n除以除以i i的余数的余数r ri=2i=2输入输入n nin-1in-1或或r=0r=0?是是是是结束结束否否否否i i的值增加的值增加1 1,仍用,仍用i i表示表示输输出出“n n是是质质数数”输出输出“n n不是质数不是质数”在此有在此有4 4种种程序框,程序框,2 2种种流程线,还记流程线,还记得它们的名称得它们的名称和功能吗?和功能吗?12例例1 已知两个变量已知两个变量x和和y,试交,试交换这两个变量的值。换这两个变量的值。13解:为了达到交换的目的,需要一个临解:为了达到交换的目的,需要一个临时的中间变量时的中间变量p,其算法是:,其算法是:S1 p x S2 x y S3 y p开始开始P xx yy P结束结束14例例2.求函数求函数y=lnx的函数值。的函数值。解:算法解:算法S1 输入自变量输入自变量x的值;的值;S2 计算计算y=lnx;S3 输出输出y的值的值.开始开始y=lnx输出输出y结束结束输入输入x15例例3.已知点已知点P0(x0,y0)和直线和直线l:Ax+By+C=0,求点,求点P0(x0,y0)到直线到直线l的的距离距离d.解:(解:(1)用自然语言表达:)用自然语言表达:S1 输入点的坐标输入点的坐标x0,y0,输入直线方程,输入直线方程的系数的系数A,B,C;S2 计算计算z1=Ax0+By0+C;S3 计算计算z2=A2+B2;S4 计算计算 ;S5 输出输出d.16开始开始输入输入x0,y0,A,B,Cz1=Ax0+By0+Cz2=A2+B2结束结束输出输出d流程图流程图:17例例4.半径为半径为r的圆的面积计算公式为的圆的面积计算公式为S=r2,当,当r=10时,写出计算圆面积的算时,写出计算圆面积的算法,画出流程图。法,画出流程图。解:算法如下:解:算法如下:S1 把把10赋给变量赋给变量r;S2 用公式计算圆的面积用公式计算圆的面积;S3 输出输出S 输出圆的面积输出圆的面积.18流程图:流程图:开始开始r10S=r2结束结束输出输出S19例例5.设计一个尺规作图的算法来确定线段设计一个尺规作图的算法来确定线段AB的一个五等分点,并画出流程图。的一个五等分点,并画出流程图。解:算法如下:解:算法如下:S1 从从A点出发作一条与原直线不重合的点出发作一条与原直线不重合的射线;射线;S2 任取射线上一点任取射线上一点C,以,以AC为单位长为单位长度,在射线上依次作出点度,在射线上依次作出点E、F、G、D,使,使AD=5AC;S3 连接连接BD,并过点,并过点C作作BD的平行线交的平行线交AB于于M,M就是要找的五等分点就是要找的五等分点.20流程图流程图 213.写出右边程序流程图的运写出右边程序流程图的运算结果:如果输入算结果:如果输入R=8,那,那么输出么输出a=。4225.就(就(1)、()、(2)两种逻辑结构,说出各自的)两种逻辑结构,说出各自的算法功能算法功能开始开始输入输入a,b结束结束sum=a+b输出输出sum开始开始输入输入a,b输出输出结束结束(1)答案:答案:(1)求直角三角形斜边长;)求直角三角形斜边长;(2)求两个数的和)求两个数的和(2)236.写出解方程组写出解方程组 的一个算法,的一个算法,并用流程图表示算法过程。并用流程图表示算法过程。解:算法如下:解:算法如下:S1 将三个方程相加得将三个方程相加得x+y+z=6 (4)S2 用(用(4)式减()式减(1)式得)式得z=3;S3 用(用(4)式减()式减(2)式得)式得x=1;S4 用(用(4)式减()式减(3)式得)式得y=2.24流程图流程图 开始开始结束结束三式相加得三式相加得4式式x+y+z=64式减式减1式得式得z=34式减式减2式得式得x=14式减式减3式得式得y=2257.已知梯形上底为已知梯形上底为2,下底为,下底为4,高为,高为5,求其面积,设计出该问题的流程图求其面积,设计出该问题的流程图开始开始输出输出结束结束268.已知摄氏温度已知摄氏温度C与华氏温度与华氏温度F的转换公的转换公式是式是 现在摄氏温度现在摄氏温度C为为23.5,将将它转换成华氏温度它转换成华氏温度F,输出并画出流程图。,输出并画出流程图。解:解:S1 输入输入C=23.5;S2 ;S3 输出输出F.27开始开始输入输入C=23.5F=5*C/9+32输出输出F结束结束流程图流程图