113算法的三种基本逻辑结构和框图表示(三)

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

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

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

资源描述

1.1.3算法的三种基本逻辑结构和框图表示(三)三、循环结构在科学计算中,会遇到许多有规律的重复运算,例如人口预测。已经知道现有的人口总数是P,人口的年增长率是R,预测第T年后人口总数将是多少?问题的分析:(1)第一年后的人口总数是P+P×R=P(1+R);(2)第二年后的人口总数是P×(1+R)+P×(1+R)×R=P(1+R)2;……以此类推,得到第T年后的人口总数是P(1+R)T.这就是说,如果要计算第10年后的人口总数,乘(1+R)的运算要重复10次。如果一个计算过程,要重复一系列的计算步骤若干次,每次重复的计算步骤完全相同,则这种算法过程称为循环过程。循环过程非常适合计算机处理,因为计算机的运算速度非常快执行成千上万次的重复计算,只不过是一瞬间的事,且能保证每次的结果都正确。根据指令条件决定是否重复执行一条或多条指令的控制结构称为循环结构。否是开始输入第一年人口P人口增长率R,预测第T年增长时间t=1t≤Tt=t+1P=P+I计算增量I=P×R结束输出P值变量P在计算机中由一个地址单元和一个存储单元组成,计算机工作时,先找到P的地址单元,用读写头读出存储单元的内容,将此内容送到运算器中,进行P+I的运算,再用读写头读出运算器的运算结果,将它送到P的地址单元,将运算结果写入存储单元,同时原先存储的内容被擦去,这样就完成了用P+I代替P的过程,这一过程也可以写成“P=P+I”.“P=P+I”怎样理解?循环结构特点需要重复执行同一操作的结构称为循环结构,即从某处开始,按照一定的条件反复执行某一处理步骤,反复执行的处理步骤称为循环体.右图是一种常见的循环结构。它的功能是先执行A框,然后判断给定的条件是否成立,如果p条件不成立,则再执行A,然后再对p条件作判断,如果p条件仍然不成立,又执行A,……,直到型循环结构另外,下图所示的框图也是常见的一种循环结构,它的功能是先判断条件p是否成立,若成立,则执行A框;再判断,再执行,……,直到不符合条件时,就终止循环,执行本循环结构后的下一步程序。当型循环结构例2.设计一个计算“1+2+3+……+100”的值的算法,并画出程序框图解:只需要一个累加变量和一个计数变量,将累加变量的初始值设为0,计数变量的值可以从1到100.算法:S1i=1;S2s=0;S3如果i≤100,则执行S4,S5,否则执行S6;S4s=s+i,S5i=i+1;S6输出s.开始输出s结束i≤100s=s+ii=i+1i=1s=0是否例3.设计一个求满足“1+3+5+…+n2008”的n的最小值的算法,并画出程序框图解:在这个问题中,需要累加多少次,事先并不知道,为此我们采用直到型的循环.算法:S1n=1;S2s=1;S3如果s2008,则执行S6,否则执行S4,S5;S4n=n+2,S5s=s+n;S6输出n.开始输出n结束s2008n=n+2s=s+nn=1s=1是否例4.已知n个正整数排成一行如下:a1,a2,a3,…,an-1,an,其中下脚码表示n个数的排列位置,这一行数满足条件:a1=1,a2=1,an=an-2+an-1(n≥3,n∈N),画出计算第n项的程序框图。分析:a1=1,a2=1,an=an-2+an-1,所以a3=2,a4=3,a5=5,……,ak=ak-2+ak-1,我们看到ak,ak-2,ak-1,都是k的函数,数值随k而变化。因此在框图中要引入三个变量,分别用C、A、B表示ak,ak-2,ak-1,且首先要输入正整数n(n≥3),以及给A和B分别输入数值1,1,然后循环计算。否是开始输入nA=1,B=1,k=3k≤nk=k+1A=B,B=CC=A+B结束输出C例5.画出计算值的一个算法程序框图.10131211开始输出s结束i≤10s=s+1/ii=i+1i=1s=0是否例6.画出对x=1,2,3,…,10,求x2的算法的程序框图.开始结束x≤10y=x2x=x+1x=1是否输出y例7.已知函数f(x)=x2,把区间[-3,3]10等分,画出求等分点函数值算法的程序框图.解::把区间[-3,3]10等分,每一份的长度为,所以各等分点分别为-3+×1,-3+×2,-3+×3,…,-3+×9代入函数解析式即可求值.5353535353开始结束AB=-3,=3i=1计算=-3+CiCB≥?计算C输出Ci=+1i3522是否例8.设计计算13+33+53+…+993的算法程序,并画出相应的流程图。p=0i=1p=p+i3i=i+2i99YN输出p算法如下:p=0;i=1;S1S2S3p=p+i3;S4i=i+2;S5若i99,则输出p,否则转S3.

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

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

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

×
保存成功