算法框图-循环结构_第1页
算法框图-循环结构_第2页
算法框图-循环结构_第3页
算法框图-循环结构_第4页
算法框图-循环结构_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2算法框图的基本结构及设计2.3循环结构例例4:4:设计一算法,求和设计一算法,求和:1+2+3+:1+2+3+100+100第一步:输入输入n=100n=100;第二步:计算计算S=n(n+1)/2S=n(n+1)/2;第三步:输出输出S S。算法1:利用等差数列求和公式开始结束输入n=100S=n(n+1)/2输出S顺序结顺序结构构112nn nSnad例例4:4:设计一算法,求和设计一算法,求和:1+2+3+:1+2+3+100+100算法2:第一步:从从1开始将自然开始将自然数数1、2、 3、100逐逐个相加个相加;第二步:输出累加结果。输出累加结果。思考:1、上边的式子有怎样的规律呢

2、?S=0S=S + 1S=S+ 2S=S+ 3S=S+ 1002、怎么用程序框图表示呢?S = S + ii =i + 14、如何使程序结束?3、i有什么作用?S呢?S=S + i累加法累加法(3)循环结构循环结构 有些算法中有些算法中,也经常出现从某处开始也经常出现从某处开始,按照一按照一定条件定条件,反复执行某些步骤的情况反复执行某些步骤的情况.这就是这就是循环结循环结构构.反复执行的步骤称为反复执行的步骤称为循环体循环体.知识探究知识探究循环结构的三要素循环结构的三要素:循环变量,循环体、循环的终止条件。循环结构的设计步骤循环结构的设计步骤1)确定循环结构的循环变量和初始条件;2)确定算

3、法中需要反复执行的部分,即循环体;3)确定循环的终止条件。计数变量计数变量:用于记录循环次数用于记录循环次数,同时还用同时还用于判断循环是否终止于判断循环是否终止.i 累加变量累加变量:用于输出结果用于输出结果,一般与计数变一般与计数变量同步执行量同步执行,累加一次累加一次,计数一次计数一次.sS = S + ii =i + 1循环体循环体S = S + ii =i + 1解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。试分析两种流程的异同点当型结构S = S + i i =i + 1是否S = S + ii =i + 1否是i100?i 100?请填上判断的

4、条件。可以先可以先判断再判断再执行执行可以先执行再可以先执行再判断判断直到型结构使循环能使循环能够终止够终止开始开始1i 0S 100?i N输出输出S结束结束1ii SSiY计数变量计数变量:用于记录循环次数用于记录循环次数,同时还用同时还用于判断循环是否终止于判断循环是否终止.累加变量累加变量:用于输出结果用于输出结果,一般与计数变一般与计数变量同步执行量同步执行,累加一次累加一次,计数一次计数一次.循环终止条件循环终止条件循环体循环体确定算法中需要反复执行的部分确定算法中需要反复执行的部分,即即循环体;循环体;循环循环变量变量最后的结果结束S = S + i i =i + 1i100?输

5、出S否是i=1,S=0开始结束输出Si=1,S=0开始S = S + ii =i + 1i 100?否是结束S = S + ii =i + 1i100?输出S否是i=1,S=0开始步骤A步骤B 思考:将步骤A和步骤B交换位置,结果会怎样?能达到预期结果吗?为什么?要达到预期结果,还需要做怎样的修改? 答:达不到预期结果;达不到预期结果;因为是从因为是从2开始加到开始加到100.须将计数变量须将计数变量i的初始值改的初始值改为为0.循环结构分为循环结构分为当型循环结构当型循环结构和和直到型循环结构直到型循环结构差异差异:循环终止条件不同循环终止条件不同,检验条件是否成立的先后次序也不同检验条件是

6、否成立的先后次序也不同.当型循环结构当型循环结构:先判断后执行循环体先判断后执行循环体.直到型循环结构直到型循环结构:先执行循环体后判断条件是否成立先执行循环体后判断条件是否成立.循环体循环体满足条件?满足条件?否否是是直到型循环结构直到型循环结构当型循环结构当型循环结构循环体循环体满足条件?满足条件?是是否否进一步理解循环框图和分析循环结构的各个要素进一步理解循环框图和分析循环结构的各个要素例例1设计算法,输出1000以内能被3和5整除的所有正整数,画出算法框图。解:引入变量a=15n(n=1,2,3,66)n从1到66,反复输出a,就能输出1000以内的所有能被3和5整除的正整数。算法框图

7、如右:开 始n=1a=15n输出an=n+1n66结 束是否初始条件循环体循环终止条件练习巩固练习巩固1 1、设计一算法,求积、设计一算法,求积:1:12 23 3100100,画出流程图,画出流程图结束输出Pi=0,P=1开始i = i + 1P=P*ii=100?否是思考:该流程图与前面的例4中求和的流程图有何不同?EX:EX:设计一算法,求和设计一算法,求和:2:22 2+4+42 2+6+62 2+ +1002,画,画出流程图出流程图 例例7.某工厂某工厂2005年的生产总值为年的生产总值为200万元万元,技术革新后预计技术革新后预计以后每年的生产总值比上一年增加以后每年的生产总值比上

8、一年增加5%.设计一个程序框图,输设计一个程序框图,输出预计年生产总值超过出预计年生产总值超过300万元的最早年份万元的最早年份.算法算法第一步:输入第一步:输入2005年的年生产总值年的年生产总值.第二步:计算下一年的年生产总值第二步:计算下一年的年生产总值.第三步:判断所得结果是否大于第三步:判断所得结果是否大于300.若是,输出该年若是,输出该年年份年份;否则,返回第二步否则,返回第二步.循环结构的设计步骤循环结构的设计步骤(1)(1)确定循环结构的确定循环结构的循环变量循环变量和和初始条件初始条件; ;(2)(2)确定算法中需要反复执行的部分确定算法中需要反复执行的部分, ,即即循环体

9、循环体;(3)(3)确定循环的确定循环的终止条件终止条件. .,a n200,2005an0.051taaatnn 300?a 直到型循环结构直到型循环结构0.05aa 300?a 当型循环结构当型循环结构开始开始2005n 200a 0.05ta aat1nn300?a 否否结束结束输出输出n是是开始开始2005n 200a 300?a 结束结束输出输出n否否当型循环结构当型循环结构直到型循环结构直到型循环结构0.05ta aat1nn是是 例例7.某工厂某工厂2005年的生产总值为年的生产总值为200万元万元,技术革新后预计以后每年的生产总技术革新后预计以后每年的生产总值比上一年增加值比上

10、一年增加5%.设计一个程序框图,输出预计年生产总值超过设计一个程序框图,输出预计年生产总值超过300万元的最早万元的最早年份年份.EX:EX:设计一算法,求使设计一算法,求使:1+2+3+:1+2+3+n2012成立的最小成立的最小自然数自然数n的值,的值,画出流程图画出流程图1 1、写出下列程序的输出结果、写出下列程序的输出结果练习练习开始i=0j=10j19?i=i+1j=j+3是输出i否结束开始a=5,s=1a4?s=saa=a-1是否输出s结束开始i=2sum=0sum=sum+ii=i+2i100?否是输出sum结束开始n=1s=0n51否输出s结束是SSnn=n+22、写出S的表达

11、式开始S=0i=1i5?否是12*SSii=i+1结束输出S开始S=1i=2i10?否是S=S*ii=i+1输出S结束3、在判断框中填入相应的条件开始S=0i=1,n=2是否i=i+1输出S结束n=n+21nSSni该程序是计算的值的一个框图13519246201351924620问:若没有变量?i1(2012北京卷)执行如图所示的程序框图,输出的S值为A2 B4 C8 D16C当k0时,满足k3,因此S1201;当k1时,满足k3,因此S1212;当k2时,满足k3,因此S2228;当k3时,不满足k3,因此输出S8.2如图,在程序框图中,若输入x为5,则输出的值是( ) 31 当输入x5时, 注意到52311,且52431,故运行此程序后输出的y值为31,3(2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论