2.3-循环结构_第1页
2.3-循环结构_第2页
2.3-循环结构_第3页
2.3-循环结构_第4页
2.3-循环结构_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、2.3 循环结构开始开始输入输入a a1 1,a,a2 2,a,a3 3,a,a4 4,a,a5 5将将a a1 1,a,a2 2比较,大数记作比较,大数记作b b将将b,ab,a3 3比较,大数记作比较,大数记作b b将将b,ab,a4 4比较,大数记作比较,大数记作b b将将b,ab,a5 5比较,大数记作比较,大数记作b b输出输出b b结束结束1.1.若要从五个不同的数若要从五个不同的数中找出最大数,我们可中找出最大数,我们可以用什么结构呢以用什么结构呢?顺序结构顺序结构如图所示如图所示2.2.设计一个算法设计一个算法, ,求求100100个数中的最大数,画出个数中的最大数,画出算法框

2、图算法框图. .我们是否还可以用上题的方法呢?我们是否还可以用上题的方法呢?不能,如果用上述的方法过程太繁杂了不能,如果用上述的方法过程太繁杂了. .下面介绍另一种结构来解决这类问题,下面介绍另一种结构来解决这类问题,即循环结构即循环结构. .1. 1.进一步理解程序框图的概念;进一步理解程序框图的概念;2. 2.掌握运用程序框图表达循环结构的算法;掌握运用程序框图表达循环结构的算法;( (重点)重点)3. 3.掌握三种结构的区别与联系掌握三种结构的区别与联系. .例例1 1 设计算法,输出设计算法,输出1 0001 000以内能被以内能被3 3和和5 5整除的整除的所有正整数,画出算法框图所

3、有正整数,画出算法框图. .分析:分析:凡是能被凡是能被3 3和和5 5整除的正整数都是整除的正整数都是1515的倍数,的倍数,由于由于1 000=151 000=1566+1066+10,因此,因此1 0001 000以内一共有以内一共有6666个这样的正整数个这样的正整数. .解:解:引入变量引入变量a表示待输出的数表示待输出的数, ,则则 a=15=15n ( (n=1,2,3,=1,2,3,,66 )66 ). . n从从1 1变到变到6666,反复输出,反复输出a,就能输出,就能输出1 0001 000以内以内的所有能被的所有能被3 3和和5 5整除的正整数整除的正整数. .循环变量

4、初始值循环变量初始值结束结束开始开始n=1n=1a=15n输出输出an=n+1n=n+1n66n66否否是是循环体循环体循环的终止条件循环的终止条件循环变量的后继循环变量的后继变量变量n n控制着控制着循环的开始循环的开始和结束,称和结束,称为为循环变量循环变量. .开开 始始 输出输出“y y 不是闰年不是闰年”4 4 整除整除 y y100 100 整除整除 y y400 400 整除整除 y y 输出输出“y y 是闰年是闰年”否否否否是是是是是是否否y=2000y=2000y=y+1y=y+1y2500y2500否否结束结束是是例例2 2 阅读图中所示的框图,回阅读图中所示的框图,回答

5、下列问题:答下列问题:(1 1)变量)变量y y在这个算在这个算法中的作用是什么?法中的作用是什么?(2 2)这个算法)这个算法的循环体是哪的循环体是哪一部分,功能一部分,功能是什么?是什么?变量变量y y是循环变量,是循环变量,控制着循环的开始控制着循环的开始和结束和结束. .虚线所框部分,其功虚线所框部分,其功能是判断年份能是判断年份y y是否是是否是闰年,并输出结果闰年,并输出结果. .(3 3)这个算法的处理功能是什么?)这个算法的处理功能是什么?由前面的分析,我们知道,这个算法的处由前面的分析,我们知道,这个算法的处理功能是:判断理功能是:判断2000200025002500(包括(

6、包括25002500)年中,)年中,哪些年份是闰年,哪些年份不是闰年,并输哪些年份是闰年,哪些年份不是闰年,并输出结果出结果. .循环结构的算法框图为:循环结构的算法框图为:循环变量循环变量= =初始值初始值循环体循环体循环变量循环变量= =循环变量的后继值循环变量的后继值终止条件是否成立终止条件是否成立否否是是开始开始结束结束例例3 3 求求100100个数中的最大数,画出算法框图个数中的最大数,画出算法框图. .分析:分析:引入变量引入变量 b b与与i,i,并用并用a ai i(i=1,2,3i=1,2,3,100100)表示待比较的数表示待比较的数. .赋予赋予b b的初始值的初始值b

7、=ab=a1 1,算法中反复执行,算法中反复执行的部分为:比较的部分为:比较b b与与a ai i,如果,如果bab100.100.是是是是开始开始输入输入a1,a2,,a100i=2i=2b=ab=a1 1bab100i100输出输出b b结束结束否否赋予变量初始值赋予变量初始值循环体循环体循环的终止条件循环的终止条件循环变量的后继循环变量的后继解:解:算法框图如图:算法框图如图: 本节主要介绍如何用循环结构来描述算法,本节主要介绍如何用循环结构来描述算法,一般地,在画出算法框图之前,需要确定三要一般地,在画出算法框图之前,需要确定三要素:素:确定循环变量和初始条件;确定循环变量和初始条件;

8、确定算法中反复执行的部分,即循环体;确定算法中反复执行的部分,即循环体;确定循环的终止条件确定循环的终止条件. .例例4 4 有这样一列数有这样一列数: 0: 0,1 1,1 1,2 2,3 3,5 5,从第三项起每一项等于前两项的和从第三项起每一项等于前两项的和. .设计一个设计一个算法框图算法框图, ,输出这个数列的前输出这个数列的前5050项项. .分析:分析:设置设置5050个变量:个变量:A A1 1,A,A2 2,A,A3 3, , A, A5050, ,表示数列表示数列的前的前5050项项. .由这个递推关系知道由这个递推关系知道, ,只要知道这个数列的前两项只要知道这个数列的前

9、两项, ,就能将后面的所有项都输出来就能将后面的所有项都输出来, ,因为算法中因为算法中, ,反复计算反复计算和输出的步骤都是一样的和输出的步骤都是一样的, ,因此因此, ,可以用循环结构来描可以用循环结构来描述这个算法述这个算法. .如果设如果设A Ai-2i-2,A,Ai-1i-1,A,Ai i分别表示数列中连续的三项分别表示数列中连续的三项, ,则则A Ai-1i-1+A+Ai-2i-2A Ai i= =(1 1)循环变量和初始条件)循环变量和初始条件 设下标设下标i i为循环变量,初始条件为:为循环变量,初始条件为:3 3为为i i的的初始值初始值. .(2 2)循环体)循环体 算法中

10、反复执行部分为算法中反复执行部分为: : A Ai iA Ai-1i-1+A+Ai-2i-2; ;输出输出A Ai i . .(3 3)终止条件)终止条件 当当i50i50时时, ,算法结束算法结束. .解解: : 算法框图如图所示:算法框图如图所示:i50i50开始开始A A1 1=0,A=0,A2 2=1=1输出输出A Ai ii=i+1i=i+1结束结束否否是是i=3i=3A Ai i=A=Ai-1i-1+A+Ai-2i-2输出输出A A1 1,A A2 2思考:思考:(1 1)你还记得二分法吗?二分法的步骤是什么?)你还记得二分法吗?二分法的步骤是什么?(2 2)怎样设计本题的算法?)

11、怎样设计本题的算法?(3 3)算法框图如何画?)算法框图如何画?我们知道,对于给定的一元方程我们知道,对于给定的一元方程f(x)=0f(x)=0,要求,要求精度为精度为0.010.01的近似解的算法如下:的近似解的算法如下:(2)(2)如果不为如果不为0,0,则分下列两种情形则分下列两种情形: :【分析理解分析理解】(2)(2)如果区间长度大于如果区间长度大于0.01,0.01,则在新的有解区间的基础上则在新的有解区间的基础上重复上述步骤重复上述步骤. .5.5.判断新的有解区间的长度是否不大于判断新的有解区间的长度是否不大于0.01:0.01:(1)(1)如果区间长度不大于如果区间长度不大于

12、0.01,0.01,则此区间内任意值均可作则此区间内任意值均可作为方程的近似解为方程的近似解; ;在上述算法中在上述算法中: :(1)(1)循环变量和初始条件循环变量和初始条件(2)(2)循环体循环体(3)(3)终止条件终止条件注意终注意终止条件止条件解:解:算法框算法框图如图图如图: :开始开始结束结束是是否否是是是是否否否否思考:思考:请观察给出的框图请观察给出的框图, ,这是一个求和算法的框图这是一个求和算法的框图, ,请运行几步看一看请运行几步看一看, ,指出该指出该循环结构的循环体循环结构的循环体, ,循环变循环变量和循环的终止条件量和循环的终止条件. .开始开始s=0s=0i=1i

13、=1输出输出s ss=s+is=s+ii4i4结束结束否否是是i=i+1i=i+1循环变量:循环变量: i i终止条件:终止条件: i4i4处理功能:处理功能:s=1+2+3+4=10s=1+2+3+4=10输出结果:输出结果:1010循环体循环体开始开始s=0s=0i=1i=1输出输出s ss=s+is=s+ii4i4结束结束否否是是i=i+1i=i+1变式练习变式练习: :若改为右图若改为右图, ,则则输出的结果为输出的结果为_._.14141.1.(20142014安徽高考)如图所示,安徽高考)如图所示,算法算法框图框图的输出结果是(的输出结果是( )A.A.34 B.55 34 B.5

14、5 C.78 D.89C.78 D.89B BZ2.2.(20132013广东高考)执行如图所示的程序框广东高考)执行如图所示的程序框图,若输入图,若输入n n的值为的值为3 3,则输出,则输出S S的值是(的值是( )A A1 B1 B2 2 C C4 D4 D7 7C C 3.(20143.(2014北京高考北京高考) )执行如图所示的程序框图执行如图所示的程序框图, ,输出的输出的S S值为值为( () )A.1A.1 B.3 B.3 C.7 C.7 D.15 D.15【解析解析】选选C.k=0,S=0;S=0+2C.k=0,S=0;S=0+20 0=1,k=1;=1,k=1; S=1+

15、2 S=1+21 1=3,k=2;=3,k=2; S=3+2 S=3+22 2=7,k=3=7,k=3. .C C4.4.(20132013天津高考)阅读如图所示的程序框图天津高考)阅读如图所示的程序框图, , 运行运行相应的程序相应的程序, , 若输入若输入x x的值为的值为1, 1, 则输出则输出S S的值为的值为( )A.64 A.64 B.73B.73 C. 512C. 512 D. 585D. 585【解析解析】因为输入的因为输入的x x的值为的值为1 1,第一次循环第一次循环S=1S=1,x=2x=2;第二次;第二次循环循环S=9S=9,x=4x=4;第三次循环;第三次循环S=73S=73,此时满足输出条件,故,此时满足输出条件,故输出输出S S的值为的值为73.73.B B开始开始输入输入x xs=0s=0s=s+xs=s+x3 3x=2xx=2xs50s50输出输出s s结束结束是是否否1.1.理解循环结构的逻辑,主要用在反复做某项工作的问题中;理解循环结构的逻辑,主要用在反复做某项工作的问题中;2.2.画循环结构程序框图前画循环结构程序框图前, ,需确定以下几个要素:需确定以下几个要素:确定循环

温馨提示

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

评论

0/150

提交评论