编程学习中如何画流程图(PPT36页)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

算法的描述•自然语言•流程图•伪代码•程序设计语言•……程序框图•程序框图(流程图)是一种用程序框、流程线及文字说明来表示算法的图。构成流程图的图形符号及其作用程序框名称功能起止框(终端框)表示一个算法的起始和结束,是任何流程图不可少的.输入、输出框表示一个算法输入和输出的信息,可用在算法中任何需要输入、输出的位置.处理框(执行框)赋值、计算,算法中处理数据需要的算式、公式等分别写在不同的用以处理数据的处理框内.判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”.流程线连接程序框连接点连接程序框图的两部分•例1:计算以任意正实数为半径的圆的面积。算法:S1,输入r.S2,S=π*r*rS3,输出S.开始结束输入r输出SS=π*r*r画程序框图的规则1)框图一般按从上到下、从左到右的方向画。2)使用标准的图形符号。3)程序框一般只有一个进入点和一个退出点。4)判断框有两个退出点,用“是”与“否”或“Y”与“N”表示判断的两种结果。5)在图形符号内描述的语言要简练清楚。知识运用•例2:交换A和B两个变量的值•算法:自然语言描述S1、输入A,BS2、C=A;S3、A=B;S4、B=C。S5、输出A,B输入A,B结束输出A,B开始C=AA=BB=C输入A,B结束输出A,B开始C=AA=BB=C顺序结构•顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。如在示意图中,A框和B框是依次执行的,只有在执行完A框指定的操作后,才能接着执行B框所指定的操作。AB•例3:设计求任意3个整数a,b,c的最大值的算法。算法:令max代表三个数中的最大值S1,输入a、b、c三个数;S2,令max=a;S3,如果bmax,则max=b;S4,如果cmax,则max=c;S5,输出maxmax=a输入a,b,c结束输出max开始bmax?cmax?max=bmax=c是否否是程序框图1:开始结束输入a,b,c输出maxbmax?是否max=amax=bmax=ccmax?否是程序框图2:条件结构•条件结构是指在算法中通过对条件的判断,根据条件是否成立而选择不同流向的算法结构。满足条件?语句是否满足条件?语句语句是否•例4、设计一个求解一元二次方程ax2+bx+c=0(a≠0)的算法,并画出程序框图表示.算法:求根公式S1:输入3个系数a、b、c;S2:d=b2-4ac;S3:若d0,则输出“方程没有实数根”,结束算法;S4:p=-,q=S5:x1=p+q,x2=p-q;S6:输出x1,x2.ad2ab2开始结束输入a,b,cd=b*b-4acd0p=-,q=x1=p+q,x2=p-q输出x1,x2输出“方程没有实数根”ad2ab2是否累加器•设计一个算法1+2+…+100的值的算法,并画出程序框图.•算法:S1:S=0,i=1,S2:若i100,则输出S,算法结束.S3:S=S+i.S4:i=i+1,S5:转到S2.开始结束i=1输出Si100?否是S=0i=i+1S=S+i开始结束i=1输出Si100?否是S=0i=i+1S=S+i循环结构•循环结构:从某处开始,按照一定的条件反复执行某些步骤。•循环体:反复执行的步骤称为循环体。•循环条件控制反复执行的条件称为循环条件。循环结构一:当型循环•当型循环(while)每次执行循环体前,对条件进行判断;当条件满足时,执行循环体,否则终止循环。满足条件?循环体是否满足条件?循环体是否当型满足条件?循环体否是直接转换成当型满足条件?循环体否是循环结构二:直到型循环•直到型循环(until)先执行一次循环体,然后对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环。满足条件?循环体是否直到型满足条件?循环体否是直接转换成直到型当型循环和直到型循环的区别•当型循环先判断,后执行(循环体),循环体可能一次都不执行;直到型循环先执行(循环体),后判断,循环体至少执行一次。•当型循环当条件满足时执行循环;直到型循环当条件满足时终止循环。•当型循环和直到型循环可以相互表示。•解题时,按自然、简洁的标准选用循环结构。•讨论:如何计算下面两个问题①S=1+3+5+……+99②S=2+4+6+……+100累加器总结•累加器构件1.初值S=0;i=1S=?;i=?2.循环控制条件(由循环变量i控制)3.计算公式S=S+iS=S☆第i项4.步长ki=i+1i=i◇k•扩展:S=1+1/2+1/3+……1/100S=1*2*3*4*……*100开始结束i=1输出Si100?否是S=0i=i+1S=S+i开始结束i=1输出Si100?否是S=0i=i+1S=S+i思考:上面两个流程图有什么不同?练习2:如图给出的是计算1/2+1/4…+1/20的值的一个程序框图,其中判断框内应填入的条件是()A、i10B、i10C、i20D、i20练习3:如果执行右面的程序框图,那么输出的s=()?A.2450B.2500C.2550D.2652练习2•设计计算1-2+3-4+……+99-100的算法,并画出流程图开始结束i=1输出Si100?否是S=0i=i+1S=S-(-1)i*i方法一方法二开始结束i=1输出Si100?否是S=0i=i+1S=S-i(imod2)=0?S=S+iYN方法三开始结束i=1输出Si100?否是S=0i=i+1S=S+p*ip=1p=-p方法四(n为偶数)开始结束i=1输出Si100?否是S=0i=i+1i=i+1S=S+iS=S-i方法五(n为偶数)开始结束S=(-1)*100/2输出S开始结束S=-n/2输出S输入nnmod2=0?S=(n+1)/2YN方法六开始结束i=1输出Si100?否是S=0i=i+1(imod2)=0?S=-S+iYN输出-S算法的基本逻辑结构•顺序结构由若干个依次执行的步骤组成。•条件结构需要经过条件判断后,才能决定执行哪个操作。•循环结构从某处开始,按照一定的条件反复执行某些步骤。可以证明:任何一个算法都可以由这三种结构组合而成。算法的基本结构就是构成算法的积木,这一点在程序框图中可以清楚看到。

1 / 36
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功