1、3.2循环语句学 习 目 标核 心 素 养1.理解并掌握For语句和Do Loop语句两种基本循环语句(重点)2.掌握两种循环语句的一般格式.3.能够利用两种基本循环语句解决相关的问题.1.通过理解for语句和Do Loop语句两种基本循环语句,提升数学抽象素养.2.通过利用两种基本循环语句解决相关问题,培养逻辑推理素养.1For语句和Do Loop语句(1)For语句:在循环结构中,若预先知道循环次数,一般用For语句来表达,其一般形式为:For循环变量初始值To终值循环体Next(2)Do Loop语句:在一些循环结构中,预先不知道循环的次数,要根据其他形式的终止条件停止循环这种情况下,一
2、般用Do_Loop语句来描述,其一般形式为:Do循环体LoopWhile条件为真2基本语句描述算法的优点使用基本语句描述算法,和自然语言相比,基本语句描述的算法显得直观、清楚、明了,它的另一个优点是比较接近程序语言,便于编写程序,上机实现思考:编写程序时,什么情况下使用循环语句?提示在问题处理中,对不同的运算对象进行若干次相同运算或处理时编写程序要用到循环语句1下列问题,设计程序求解时,要用到循环语句的有()输入每个同学的数学成绩,求全班同学的平均分;求分段函数的函数值;求连续100个自然数的平方和;输入100个数,从中找出最大的数A1个B2个C3个 D4个C要用到循环语句2关于Do Loop
3、循环语句叙述正确的是()A总是执行循环体B先执行一次循环体C不满足条件时执行循环体D遇到Do Loop就结束B对于Do Loop循环语句,先执行循环体,再根据条件是否成立来确定执行循环体3以下算法运行的结果为()t2Fori2To8Step2 tt*iNext输出tA96 B192C394 D768D第一次循环,t22,第二次循环,t44,第三次循环,16696,第四次,968768.4下列程序输出的结果是()i1S0DoSS*21ii1Loop Whilei4输出SA3B7C15 D19C由算法语句可知,该循环体共循环4次,分别为S2011,S2113,S2317,S27115. For语句
4、【例1】画出求1的值的算法框图,并用For语句描述该算法思路探究观察式子特点,这是一个累加问题,后一个数的分母比前一个数的分母大1.根据此特点设计其算法,画出算法框图,并用For语句描述即可解算法框图为:用For语句描述算法为:S0Fori1 To 1 000 SS1/iNext输出S利用For语句实现循环结构的三个关键点,第一,确定变量的初值,即进行初始化操作;,第二,确定循环的次数、步长以及终值;第三,确定循环体的内容.1(1)下面算法语句的执行结果为_Fori1To 7 S2ii2Next输出S(2)根据下面的算法语句,绘制出算法框图,指出输出的最后结果是什么?画出相应的算法框图S0Fo
5、ri3 To99 SSi3 ii2Next输出S(1)17该程序为For语句,最后循环结束时,i7,故此时S27317,故填17.(2)解:算法语句对应的算法框图如图所示,它用的是For语句,最终输出的结果为3353993.相应的算法框图如图:Do Loop语句【例2】编写程序计算1232529992,并画出相应的算法框图解程序如下:S0i1DOSSi2ii2Loop Whilei999输出S算法框图如图:利用Do Loop语句的两个关注点1在利用Do Loop语句解决相关问题时,要熟练掌握Do Loop语句的一般格式在运行语句的时候,先执行循环体,然后再判断条件是否成立2Do Loop语句可
6、以不知道循环的次数,但是结束循环的条件必须确定2求122232n21 000成立的n的最大正整数值,用算法语句表示其算法解S1i2DoSSi2ii1Loop WhileS1 000ni2输出n循环语句的综合应用探究问题1循环语句的应用条件是什么?提示:在处理问题时,对某一步骤或若干步骤重复执行多次,即对不同的运算对象进行若干次的相同运算式处理,这种模式由循环语句来实现2For语句与Do Loop语句可以相互转化的条件是什么?提示:当知道循环体被执行的次数时,两者可以相互转化3循环语句与条件语句的关系是什么?提示:循环语句中一定有条件语句,条件语句是循环语句的一部分,离开条件语句,循环语句无法循
7、环但条件语句可以脱离循环语句单独存在,可以不依赖循环语句独立地解决问题4两种循环语句的区别与联系是什么?提示:(1)联系:两种循环语句都是用来解决具有规律性的重复计算的相关问题,实现算法中的循环结构有时,这两种循环语句可以进行互化两种循环语句在循环流程中都必须具备三个要素:第一,需要进行初始化操作,限定约束条件第二,循环需要有结束的机会,不能出现死循环的情况第三,在循环中,每执行一次循环体,变量就会发生改变,并逐渐接近满足跳出循环的条件(2)区别:For语句,首先确定了循环的次数,然后执行循环体,而Do Loop语句是先执行循环体,再设定循环结束的条件【例3】(1)根据下列算法语句画出算法框图
8、S1,n1,Do,SS*nnn1Loop While S5 000输出n2(2)某商场第一年销售平板电脑5 000台,如果平均每年销售量比上一年增加10%,那么从第一年起,大约几年可使总销售量达到30 000台?画出解决此问题的算法框图,并写出算法语句思路探究(1)明确循环体及控制变量是解题的关键;(2)写出第几年销量时注意控制条件为总和小于30 000.解(1)算法框图:(2)算法框图如图所示:算法语句:m5 000S0i0DoSSmmm*(10.1)ii1Loop While S0Then输出xmm1End IfLoop Whilei100输出m应用循环语句编写程序需注意的问题(1)循环语
9、句中的变量一定要合理设置变量的初始值(2)循环语句在循环的过程中需要有“结束”的语句,即有跳出循环的机会(3)在循环中要改变循环条件的成立因素程序每执行一次循环体,循环条件中涉及的变量就会发生改变,且在步步逼近跳出循环体的条件.1思考辨析(1)For语句适用于任何循环结构()(2)循环语句中循环体是反复执行的()(3)For语句与Do Loop语句之间可以无条件相互转化()解析(1),For语句只适用于预先知道循环次数的循环结构(2),由定义知循环体在循环语句中是反复执行的(3),For语句与Do Loop语句之间相互转化是要看条件的,只有知道了循环次数后才可以转化答案(1)(2)(3)2下面的算法语句执行后输出的结果为_i1S0DoSSiii1LoopWhilei9输出S45该程序是求S123945.3以下程序表示的是求1的值其中处应填_i1To99Step2由题意知i初值为1,终值为99,步长为2,故处填i1 To 99 Step 2.4请用循环语句设计计算24620值的算法解S0