1、第2课时循环结构1问题导航(1)什么是循环结构、循环体?(2)循环结构可细分为哪两类?它们有什么相同点和不同点?(3)什么情况下,可以使用循环结构?(4)循环结构与条件结构有什么关系?2例题导读通过对例6的学习,学会当算法过程中包含重复存在的步骤时,可以用循环结构表示,同时学会循环结构的两类表示:一类是当型循环结构,另一类是直到型循环结构;通过对例7的学习,学会按照“确定循环体”“初始化变量”“设定循环控制条件”的顺序来构造循环结构1循环结构的概念及相关内容(1)循环结构:按照一定的条件反复执行某些步骤的情况(2)循环体:反复执行的步骤2循环结构的分类及特征名称直到型循环当型循环结构特征先执行
2、循环体,后判断条件,若条件不满足,就继续执行循环体,直到条件满足时终止循环.先判断条件,若条件满足,则执行循环体,否则终止循环.1判断下列各题(对的打“”,错的打“”)(1)程序框图中的循环可以是无尽的循环;()(2)循环结构是在一些算法中从某处开始按照一定条件,反复执行某一处理步骤,故循环结构中一定包含条件结构;()(3)循环结构中不一定包含条件结构()解析:程序框图中的循环,必须是有限循环;循环结构一定包含条件结构答案:(1)(2)(3)2下面的框图是循环结构的是()ABC D解析:选C.由循环结构的特点知是循环结构,其中是顺序结构,是条件结构3运行如图所示的程序框图,输出的结果为_解析:
3、n1;S101,n2;S3,n3;S6,n4;S10,n5;S15,n6;S21,n7;S28,n8.答案:284举例说明循环结构适用哪些常见的计算?解:循环结构主要用在一些有规律的重复计算中,如累加求和,累乘求积等问题1算法的基本逻辑结构有三种,即顺序结构、条件结构和循环结构其中顺序结构是最简单的结构,也是最基本的结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相互支撑的,它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过这三种结构来表达2两种循环结构的相同点:从两种不同形式的循环结构可以看出,循环结构中一定包含条件结构,用于确定何时终止执行循环体3如果算法问题里涉及的
4、运算进行了许多次重复的操作,且先后参与运算的数之间有相同的规律,就可引入变量循环参与运算(我们称之为循环变量),应用于循环结构在循环结构中,要注意根据条件设计合理的计数变量、累加和累乘变量等,特别要求条件的表述要恰当、精确循环结构程序框图的设计设计一个算法,求13239931003的值,并画出程序框图(链接教材P13例6)解算法如下:第一步,使S0.第二步,使I1.第三步,使SSI3.第四步,使II1.第五步,若I100,则返回第三步;否则,输出S,算法结束程序框图如图所示方法归纳(1)如果算法问题中涉及的运算进行了多次重复的操作,且先后参与运算的数之间有相同的变化规律,就可以利用循环结构设计
5、算法解决(2)本题易错点是初始值与计数变量的取值;在循环结构中,要注意根据条件设计合理的计数变量、累加变量和累乘变量等,条件的表述一定要恰当、精确,累加变量的初始值一般取0,而累乘变量的初始值一般取1.1(1)如图所示程序框图输出的结果是()A8 B9 C10 D11解析:选D.当i11时,不满足条件即输出(2)设计求12342 015的程序框图解:程序框图如图所示:利用循环结构求满足条件的数值求满足12的最小正整数n,写出算法,并画出程序框图解算法如下:第一步,S0;第二步,i1;第三步,SS;第四步,ii1;第五步,若S2,则输出i1,否则返回第三步,循环结束程序框图如图所示:互动探究若将
6、本例中的改为,其他条件与结论都不变,那么,算法与程序框图需要怎样变化?解:算法与程序框图中,都将“SS”改为“SS”方法归纳求满足条件的最值问题的实质及注意事项:(1)实质:利用计算机的快速运算功能,对所有满足条件的变量逐一测试,直到产生第一个(不)满足条件的值时结束循环(2)注意事项:要明确数字的结构特征,决定循环的终止条件与数的结构特征的关系及循环次数要注意要统计的数出现的次数与循环次数的区别要特别注意判断框中循环变量的取值限制,是“”“50 000的最小正整数n.答案:求满足1357n50 000的最小正整数n(2)已知1234i200,画出求i的最大值的程序框图解:程序框图如图所示循环
7、结构的实际应用某工厂2014年生产小轿车200万辆,技术革新后预计每年的生产能力比上一年增加5%,问最早哪一年该厂生产的小轿车数量超过300万辆?写出解决该问题的一个算法,并画出相应的程序框图解算法如下:第一步,令n0,a200,r0.05;第二步,Tar(计算年增量);第三步,aaT(计算年产量);第四步,如果a300,那么nn1,返回第二步;否则执行第五步;第五步,N2014n;第六步,输出N.程序框图如图所示:方法归纳(1)在解决实际问题时,关键是读懂题目,建立合适的模型,找到问题的计算公式例如本题中T200(15%)n.然后再去设计算法,画出程序框图(2)设计一个程序框图算法的一般步骤
8、:用自然语言表述算法步骤;确定每一个算法步骤所包含的逻辑结构,并用相应的程序框图表示,得到表示该步骤的程序框图;将所有步骤的程序框图用流程线连接起来,并加上终端框,得到表示整个算法的程序框图3(1)小红今年12岁,她父亲比她大25岁,设计程序框图,计算出几年后她父亲比她的年龄大一倍,那时他们两人的年龄各是多少?解:程序框图如图所示(2)某城市现有人口总数为100万人,如果年自然增长率为1.2%,试解答下列问题:写出该城市人口数y(万人)与年份x(年)的函数关系式;用流程图表示如下算法:计算大约多少年以后该城市人口将达到120万人解:y100(11.2%)x;程序框图如图:易错警示忽视初始值以及
9、循环终止条件致误画出求S142434104的程序框图解程序框图如图所示:错因与防范(1)本题易出现累加和S的初始值为1,循环终止条件为i10的错误(2)循环结构中对循环次数的控制非常关键,它直接影响着运算的结果(3)控制循环次数要引入循环变量,其取值如何限制,要弄清两个问题:一是需要运算的次数;二是循环结构的形式,是“当型”还是“直到型”扫一扫进入91导学网()循环结构4(1)(2014高考重庆卷)执行如图所示的程序框图,则输出s的值为()A10 B17C19 D36解析:选C.开始s0,k2;第一次循环s2,k3;第二次循环s5,k5;第三次循环s10,k9;第四次循环s19,k17,不满足
10、条件,退出循环,输出s19.故选C.(2)给出30个数:1,2,4,7,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,以此类推,要计算这30个数的和,现已给出了该问题算法的程序框图(如图所示),请在图中判断框处和执行框处填上合适的语句,使之能完成该题算法功能解:该算法使用了当型循环结构因为是求30个数的和,故循环体应执行30次,其中i是计数变量因此判断框内的条件应该用来限制计数变量i,故应填写i30?.算法中的变量p表示参与求和的各个数,由于它也是变化的,且满足第i个数比其前一个数大i1,第i1个数比其前一个数大i,故应有ppi.即:处应填i3
11、0?;处应填ppi.1.如图所示的程序框图中,语句“SSn”将被执行的次数是()A4 B5C6 D7解析:选B.由程序框图知:S123n.又12345120200,123456720200.故语句“SSn”被执行了5次2如图所示的程序框图表示的算法功能是()A计算小于100的奇数的连乘积B计算从1开始的连续奇数的连乘积C从1开始的连续奇数的连乘积,当乘积大于或等于100时,计算奇数的个数D计算135n100时的最小的n值解析:选D.这是一个直到型循环结构,S135,判断条件是S100?,输出的是i,所以表示的是S135n100时的最小的n值,故选D.3如图所示的程序框图的输出结果为18,那么在
12、判断框中表示的条件应该是()Ai9? Bi8?Ci7? Di6?解析:选A.当S6,i1时,m2164,S6410;当i2时,m2262,S10212;当i3时,m2360,S01212;当i4时,m2462,S21210;当i5时,m2564,S4106;当i6时,m2666,S660;当i7时,m2768,S808;当i8时,m28610,S10818.故判断条件为:i9?,故选A.4(2014高考江苏卷)如图是一个算法流程图,则输出的n的值是_解析:由算法流程图可知:第一次循环:n1,2n220,不满足要求,进入下一次循环;第二次循环:n2,2n420,不满足要求,进入下一次循环;第三次
13、循环:n3,2n820,不满足要求,进入下一次循环;第四次循环:n4,2n1620,满足要求,输出n5.答案:5A.基础达标1.一个完整的程序框图至少包含()A起止框和输入、输出框B起止框和处理框C起止框和判断框D起止框、处理框和输入、输出框解析:选A.一个完整的程序框图至少包括起止框和输入、输出框,故选A.2.(2015安徽巢湖检测)如图所示是一个循环结构的算法,下列说法不正确的是()A是循环变量初始化,循环就要开始B为循环体C是判断是否继续循环的终止条件D可以省略不写解析:选D.为循环变量初始化,必须先赋值才能有效控制循环,不可省略故选D.3.执行如图所示的程序框图,输出的S值为()A2
14、B4C8 D16解析:选C.框图执行如下:k0,S1;S1,k1;S2,k2;S8,k3.所以输出S的值为8.4(2014高考安徽卷)如图所示,程序框图(算法流程图)的输出结果是()A34 B55C78 D89解析:选B.当输入x1,y1,执行zxy及z50,xy,yz后,x,y,z的值依次对应如下:x1,y1,z2;x1,y2,z3;x2,y3,z5;x3,y5,z8;x5,y8,z13;x8,y13,z21;x13,y21,z34;x21,y34,z55.由于5550不成立,故输出55.故选B.5执行如图所示的程序框图,若m5,则输出的结果为()A4B5C6D8解析:选B.由程序框图可知,
15、k0,P1.第一次循环:因为k05,所以P1301,k011.第二次循环:因为k15,所以P1313,k112.第三次循环:因为k25,所以P33233,k213.第四次循环:因为k35,所以P333336,k314.第五次循环:因为k45,所以P3634310,k415.此时满足判断框内的条件,输出结果为zlog9 3105.故选B.6(2014高考天津卷)阅读如图所示的框图,运行相应的程序,输出S的值为_解析:S0,n3,S0(2)38,n3121不成立;故S8(2)24,n2111成立故输出S的值为4.答案:47(2015临沂调研)如果执行如图所示的程序框图,输入x4.5,则输出的数i_
16、解析:第一次执行循环体时,i1,x3.5;第二次执行循环体时,i2,x2.5;第三次执行循环体时,i3,x1.5;第四次执行循环体时,i4,x0.51.输出i4,结束答案:48执行如图所示的程序框图,若输出的a值大于2 015,那么判断框内的条件应为_解析:第一次循环:k1,a1,满足条件,所以a4137,k112.SGKS87第二次循环:a72 015,故继续循环,所以a47331,k213.第三次循环:a312 015,故继续循环,所以a4313127,k314.第四次循环:a1272 015,故继续循环,所以a41273511,k415.第五次循环:k5112 015,故继续循环,所以a
17、451132 047,k516.由于a2 0472 015,故不符合条件,输出a值所以判断框内的条件是“k5?”答案:k5?9设计一个算法,求表达式122232102的值,并画出程序框图解:算法如下:第一步,令S0,i1.第二步,判断i是否小于或等于10,若是,则执行第三步;若否,则输出S.第三步,令SSi2,并令ii1,然后返回第二步程序框图如图:10有一列数1,1,2,3,5,8,其规律是从第3个数开始,后一个数等于前两个数的和,画出计算这列数前20个数的和的程序框图解:程序框图如图所示:B.能力提升1(2014高考北京卷)执行如图所示的程序框图,输出的S值为()A1 B3C7 D15解析
18、:选C.S2021227.2(2014高考福建卷)阅读如图所示的程序框图,运行相应的程序,输出的n的值为()A1 B2C3 D4解析:选B.当n1时,2112满足条件,继续循环得n2,2222不成立,不满足条件,所以输出n2.3(2014高考湖北卷)阅读如图所示的程序框图,运行相应的程序,若输入n的值为9,则输出S的值为_解析:由题意,程序运行如下:k19,S2113,k29;S32229,k39;S923320,k49;S2024440,k59;S4025577,k69;S77266147,k79;S147277282,k89;S282288546,k99;S5462991 067,k109
19、,输出S1 067,程序结束答案:1 0674阅读如图所示的程序框图,运行相应的程序,则程序运行后输出的结果为_解析:i1,S0.第一次循环:S0lg lg 31,继续循环,i3;第二次循环:Slg 3lg lg 51,继续循环,i5;第三次循环:Slg 5lg lg 71,继续循环,i7;第四次循环:Slg 7lg lg 91,继续循环,i9;第五次循环:Slg 9lg lg 111,结束循环,输出i9.答案:95.画出计算1的值的一个程序框图解:相加各数的分子都是1,而分母是有规律递增的,每次增加2,引入变量S表示和,计数变量i,i的值每次增加2,则每次循环都有SS,ii2,这样反复进行程序框图如图所示:6(选做题)设计一个求满足10x21 000的所有正整数x的值的程序框图解:可以从最小的正整数1开始进行判断,判断是否满足10x21 000.若满足,则输出x的值;若不满足,则对1进行累加后再进行判断,依次下去,直到x21 000为止,结束程序程序框图如图所示: