资源描述
1.1.3算法的三种基本逻辑结构和框图算法的三种基本逻辑结构和框图表示(一)表示(一)一、顺序结构一、顺序结构 一般地,算法含有一般地,算法含有两大要素两大要素:一是操作一是操作,主要包括算术运算、逻辑运算、,主要包括算术运算、逻辑运算、函数运算等;函数运算等; 二是控制结构二是控制结构,控制结构控制着算法中各,控制结构控制着算法中各操作的执行顺序。其中操作运算是靠计算操作的执行顺序。其中操作运算是靠计算机来完成的,也就是在设计好程序的基础机来完成的,也就是在设计好程序的基础上,计算机可以自动完成这些计算,因此上,计算机可以自动完成这些计算,因此我们设计算法主要是解决第二部分,即我们设计算法主要是解决第二部分,即设设计控制结构计控制结构, 开始开始输入输入nflag=1n2?d=2d整除整除n?flag=0d=n-1且且flag=1?flag=1?d=d+1否否是是n是质数是质数n不是质数不是质数结束结束否否是是是是是是否否否否 由于控制算法的由于控制算法的执行顺序执行顺序的结构有所的结构有所不同,这需要研究这些控制结构中的不同,这需要研究这些控制结构中的最基最基本的结构本的结构有哪些?有哪些? 人们通过对各种各样的算法和框图进人们通过对各种各样的算法和框图进行分析和研究,证明了只需用行分析和研究,证明了只需用顺序结构顺序结构、条件分支结构条件分支结构、循环结构循环结构就可以表示任何就可以表示任何一个算法,因此我们必须学习这三种基本一个算法,因此我们必须学习这三种基本结构。结构。 顺序结构顺序结构是最简单的算法结构,语句与是最简单的算法结构,语句与语句之间,框与框之间是按语句之间,框与框之间是按从上到下从上到下的顺的顺序结构。序结构。例例1 已知两个变量已知两个变量x和和y,试交,试交换这两个变量的值。换这两个变量的值。 A B解:为了达到交换的目的,需要一个临解:为了达到交换的目的,需要一个临时的中间变量时的中间变量p,其算法是:,其算法是: S1 p x S2 x y S3 y p开始开始P xx yy P结束结束例例2. 求函数求函数y=lnx的函数值。的函数值。解:算法解:算法S1 输入自变量输入自变量x的值;的值;S2 计算计算y=lnx;S3 输出输出y的值的值.开始开始y =lnx输出输出y结束结束输入输入x例例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. 12|zdz开始开始输入输入x0,y0,A,B,Cz1=Ax0+By0+Cz2=A2+B2结束结束输出输出d12|zdz流程图流程图 :例例4 . 半径为半径为r的圆的面积计算公式为的圆的面积计算公式为S=r2,当,当r=10时,写出计算圆面积的算时,写出计算圆面积的算法,画出流程图。法,画出流程图。 解:算法如下:解:算法如下:S1 把把10赋给变量赋给变量r;10rS2 用公式计算圆的面积用公式计算圆的面积;2rSS3 输出输出S 输出圆的面积输出圆的面积.流程图:流程图:开始开始r10S=r2结束结束输出输出S例例5. 设计一个尺规作图的算法来确定线段设计一个尺规作图的算法来确定线段AB的一个五等分点,并画出流程图。的一个五等分点,并画出流程图。解:算法如下:解:算法如下:S1 从从A点出发作一条与原直线不重合的点出发作一条与原直线不重合的射线;射线;S2 任取射线上一点任取射线上一点C,以,以AC为单位长为单位长度,在射线上依次作出点度,在射线上依次作出点E、F、G、D,使使AD=5AC ;S3 连接连接BD,并过点,并过点C作作BD的平行线交的平行线交AB于于M,M就是要找的五等分点就是要找的五等分点. 流程图流程图 练习题:练习题:1、对顺序结构,下列说法:、对顺序结构,下列说法: 是最基本、是最基本、最简单的算法结构;最简单的算法结构; 框与框之间是依次框与框之间是依次进行处理;进行处理; 除输入、输出框之外,中间除输入、输出框之外,中间过程都是处理框;过程都是处理框;可以从一个框图跳到可以从一个框图跳到另一个框图执行;其中正确的有(另一个框图执行;其中正确的有( )A、4个个 B、3个个 C、2个个 D、1个个B2右边的程序框图输出的右边的程序框图输出的 S 表示,虚表示,虚线框表示的结构是线框表示的结构是 . 顺序结构顺序结构3.写出右边程序流程图的运写出右边程序流程图的运算结果:如果输入算结果:如果输入R=8,那,那么输出么输出a= 。44.已知三角形的三边已知三角形的三边a,b,c,计算该三角,计算该三角形的面积。写出算法,并用流程图表示出形的面积。写出算法,并用流程图表示出来。来。解:算法如下:解:算法如下:S1 输入输入a,b,c;S1 计算计算p=(a+b+c)/2;S2 利用公式利用公式 即可求出三角形的面积。即可求出三角形的面积。 )()(cpbpappS流程图流程图 开始开始结束结束2abcp)()(cpbpappS输入输入a,b,c输出输出S5.就(就(1)、()、(2)两种逻辑结构,说出各自的)两种逻辑结构,说出各自的算法功能算法功能开始开始输入输入a,b结束结束sum=a+b输出输出sum开始开始输入输入a,b22baddc 输出输出c结束结束(1)答案:答案:(1)求直角三角形斜边长;)求直角三角形斜边长;(2)求两个数的和)求两个数的和(2)6. 写出解方程组写出解方程组 的一个算法,的一个算法,并用流程图表示算法过程。并用流程图表示算法过程。 )3(4)2(5) 1 (3xzzyyx解:算法如下:解:算法如下:S1 将三个方程相加得将三个方程相加得x+y+z=6 (4)S2 用(用(4)式减()式减(1)式得)式得z=3;S3 用(用(4)式减()式减(2)式得)式得x=1;S4 用(用(4)式减()式减(3)式得)式得y=2.流程图流程图 开始开始结束结束三式相加得三式相加得4式式x+y+z=64式减式减1式得式得z=34式减式减2式得式得x=14式减式减3式得式得y=27.已知梯形上底为已知梯形上底为2,下底为,下底为4,高为,高为5,求其面积,设计出该问题的流程图求其面积,设计出该问题的流程图开始开始5, 4, 2hbahbaS)(21输出输出S结束结束8.已知摄氏温度已知摄氏温度C与华氏温度与华氏温度F的转换公的转换公式是式是 现在摄氏温度现在摄氏温度C为为23.5,将它转换成华氏温度将它转换成华氏温度F,输出并画出流程,输出并画出流程图。图。 3295CF解:解:S1 输入输入C=23.5;S2 ;S3 输出输出F.3295CF开始开始输入输入C=23.5F=5*C/9+32输出输出F结束结束流程图流程图
展开阅读全文