《112_程序框图与算法的基本逻辑结构(2).ppt》由会员分享,可在线阅读,更多相关《112_程序框图与算法的基本逻辑结构(2).ppt(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、程序框图与算法的基本逻辑结构(2) 循环结构图形符号图形符号名名 称称功功 能能终端框(起止框)终端框(起止框)一个算法的起始和结束一个算法的起始和结束输入、输出框输入、输出框一个算法输入和输出的信息一个算法输入和输出的信息处理框(执行框)处理框(执行框)赋值、计算赋值、计算判断框判断框判断某一条件是否成立,出判断某一条件是否成立,出口成立标口成立标“是是”不成立标不成立标“否否”流程线流程线连接程序框连接程序框连接点连接点连接程序框图的两部分连接程序框图的两部分或或构成程序框的图形符号及其作用构成程序框的图形符号及其作用(1 1)顺序结构)顺序结构 顺序结构是最简单的算法结构,语句与语句之间
2、,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。 顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。步骤n步骤n1(2 2)条件结构)条件结构 在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构. 分类是算法中经常发生的事情,条件结构的主要作用就是表示分类. 条件结构可用程序框图表示为下面两种形式.步骤A步骤B满足条件?否是步骤A满足条件?否是(3)循环结构循环结构指的是按照一定的条件反复执行的某些算法步骤.反复执行的步骤称为循
3、环体.循环体满足条件?否是循环体满足条件?否是 执行一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环. 在每次执行循环体前,对条件进行判断,当条件满足,执行循环体,否则终止循环. 例6 设计一个计算1+2+3+100的值的算法,并画出程序框图.第一步:确定首数a,尾数b,项数n;第二步:利用公式“S=n (a+b) /2”求和;第三步:输出求和结果。算法1:开始结束输入a,b,nS=n (a+b) /2输出S开始i=1S=0i=i+1S=S+ii100?输出S结束否是 例6 设计一个计算1+2+3+100的值的算法,并画出程序框图.第1步,011.第2步,
4、123.第3步,336.第4步,6410.第100步,49501005050.算法2: 第一步,令i1,S0. 第二步,若i 100成立,则执行第三步;否则,输出S,结束算法. 第三步,SSi. 第四步,i=i+1,返回第二步.当型循环结构结束i = i + 1Sum=Sum + ii=100?否是循环结构直到型结构当型结构 例6 设计一个计算1+2+3+100的值的算法,并画出程序框图.i = i + 1Sum=Sum + i 解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。直到型结构当型结构i = i + 1Sum=Sum + i是否i = i + 1Su
5、m=Sum + i否是i100?i=100?i=100?请填上判断的条件。 在解题的过程中,用累加变量S表示每一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=Si,其中S的初始值为0,i依次取1,2,100.由于i同时记录了循环的次数,所以也称为计数变量. 循环结构中都有一个计数变量和累加变量,计数变量用以记录循环次数,同时它的取值还用于判断循环是否终止,累加变量用于输出结果,累加变量和计数变量一般是同步执行的,累加一次,计数一次.P16. 设计一个算法,表示输出1,12,123, 123(n-1)+n(nN*)的过程.结束开始S=0i=1S=S+ii=i+1inY YN N输
6、入n输出S 第一步,令i=1,S=0. 第二步,计算S=S+i. 第三步,计算i=i+1,输出s. 第四步,判断in是否成立,若是,则结束;否则返回第二步. 例7 某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5.设计一个程序框图,输出预计年生产总值超过300万元的最早年份.算法步骤:第一步,输入2005年的年生产总值.第二步,计算下一年的年生产总值. 第三步,判断所得的结果是否大于300.若是,则输出该年的年份;否则,返回第二步.结束开始输出na=200t=0.05a a=a+tn=n+1a300?Y Yn=2005N N(1)确定循环体:设a为某
7、年的年生产总值,t为年生产总值的年增长量,n为年份,则循环体为t=0.05a,a=a+t,n=n+1.(2)初始化变量: n=2005, a=200.(3)循环控制条件: a300结束开始输入na=200t=0.05aa=a+tn=n+1a300?Y Yn=2005N N结束开始输入na=200t0.05aaa+tnn+1a300?N Nn=2005Y Y直到型当型小结1、循环结构的特点2、循环结构的框图表示3、循环结构该注意的问题避免死循环的出现,设置好进入(结束)循环体的条件。当型和直到型重复同一个处理过程开始m=(a+b)/2a=mb=mf(a)f(m)0?|a-b|d或f(m)=0?结束输出所求的近似根mf(x)= x22是否是输入d,a,b否 设计一个算法,求关于x的方程x220的根(精确度为d),并画出程序框图.算法步骤:第一步,f(x)=x2-2,f(a)0.第二步,令m=(a+b)/2,判断f(m)是否为0,若是,则m为所求,否则,继续判断f(a)f(m)大于0还是小于0.第三步,若f(a)f(m) 0,则令b=m,否则令a=m.第四步,判断|a-b|nY YN N设计一个算法求练习巩固 2.设计一算法,求积:123100,画出流程图.结束输出Sumi=0,Sum=1开始i = i + 1Sum=Sum*ii=100?否是
限制150内