1、成才之路 数学路漫漫其修远兮 吾将上下而求索北师大版 必修3 第二章 算法初步成才之路 高中新课程 学习指导 北师大版 数学 必修3 算法初步 第二章 第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 3 几种基本语句第二章 3.2 循环语句第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 课堂典例讲练 2易错疑难辨析 3课时作业 4课前自主预习 1第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 课前自主预习第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 古代有一位名叫北山愚公的老人,下
2、决心要用锄头挖去挡住他家出路的两座大山,愚公的朋友河曲智叟劝说:“你们父子数人要挖掉这样两座大山是完全不可能的”愚公回答道:“我挖不完,还有我的儿子接着挖,儿子挖不完还有我的孙子,山又不会再长高,我们子子孙孙重复地干下去,还怕这山平不了!”重复地做一件事,今天可以用简单的 Do Loop 语句让计算机来完成,这一节我们一起来学习循环语句.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 1.For语句循环结构是算法中的基本结构,For语句是表达循环结构最常见的语句之一,它适用于预先知道_的循环结构For语句的一般形式是:For 循环变量初始值 To终值循环体Next循
3、环次数第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 2Do Loop语句在循环结构中,若预先不知道循环次数,一般用_来描述,Do Loop语句的一般形式为:Do 循环体Loop While 条件为真Do Loop语句第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 特别提示For循环语句和Do Loop循环语句的异同:For循环语句和Do Loop循环语句都能表达循环结构的算法,但是它们在表达方式和功能上又有一定的区别,它们的区别主要表现为以下几点:1书写格式不同2作用不同:For循环语句主要适用于预先知道循环次数的循环结构;如果预先不知
4、道循环次数,则使用Do Loop循环语句第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 3For循环语句循环条件在前,首先判断循环条件再执行,如果条件不满足,一次也不执行;而Do Loop循环语句循环条件在后4用For循环语句编写时要注意设定好循环变量的初始值、终值、循环变量的改变量,应避免出现多一次循环或少一次循环的情况;用Do Loop循环语句编写程序时,一定要注意表达式的写法,当表达式为真时,继续执行循环体,当表达式为假时,结束循环,防止出现表达式正好相反的错误第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 1.下列问题可以设计成循
5、环语句的有()求133239的和;比较a,b两个数的大小;对于分段函数,要求输入自变量,输出函数值;求平方值小于100的最大整数A0个 B.1个C2个D.3个答案 C解析 是由条件语句来实现的;都可由循环语句来实现第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 2对于下面的语句:x1Do xx*xLoop While x10输出x.下列说法正确的是()A输出结果是1B能执行一次C能执行10次D是“死循环”,有语法错误第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 答案 D解析 从循环语句的格式看,这个循环语句是Do Loop语句,那么当满
6、足条件x10时,终止循环体,但是第一次执行循环体后x1,由于x110成立,则再次执行循环体,执行完成后x1,则这样无限循环下去,是一个“死循环”,有语法错误,循环终止的条件永远不能满足故选D.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 3算法语句如下:S0For i1 To 1000 SSiNext其中,语句“For i1 To 1000”的作用是()A表示一个数字从1到1000B表示从1一直加到1000C表示从1开始循环到1000D表示i从1开始以1为增量累加到1000答案 D解析 由For语句知选D.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大
7、版 数学 必修3 4执行下面算法语句,输出的结果是_A1B1DoAABBABLoop While B10.(2)由For语句的形式,本题中i是循环变量,初始值为1,终值为3,循环体为MMi.规范解答(1)运行结果为22222212.(2)运行过程是:M0;i1时,MMi011;i2时,MMi123;i3时,MMi336.跳出循环,输出6.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 规律总结 判断含有循环语句的算法的执行结果关键是明确循环终止条件在Do Loop语句中,当条件不满足时终止循环;而在For语句中,当循环变量取终值时,再执行一次循环体才终止循环第二章
8、3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 写出下列语句执行后输出的结果(1)s1For i9 To 11ss*iNext输出s.(2)x100Doxx20Loop While x0输出x.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 解析(1)该程序的运行过程是:s1;i9时,ss*i1*99;i10时,ss*i9*1090;i11时,ss*i90*11990.跳出循环,输出990.(2)这个算法语句中x是循环变量,循环体为xx20,实际上这个算法处理的是求x10020202020的问题,循环终止条件为x0,最后输出的结果为20(1002
9、0202020202020).第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 For语句的应用设计算法:计算 11211 000,使用 For 语句描述该算法,并画出算法流程图.思路分析 用 i 表示循环次数,用 S 表示总和,步骤如下:第一步:输入 i、S,i 的初始值为 1,S 的初始值为 0;第二步:i 从 1 开始循环到 1000,ii1,SS1/i;第三步:循环结束后,输出 S.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 规范解答 用i表示循环次数,用S表示总和,算法步骤如下:1令S的初始值为0,i的初始值为1;2SS1/i
10、,ii1;3如果i1 000,返回执行第2步,否则输出S.算法流程图如右图所示:第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 用For语句表示如下:S0i1For i1 To 1 000SS1/iNext输出S.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 规律总结(1)For 语句是从循环变量的初始值开始执行一次循环后,直到循环变量取到其终值结束循环,适用于预先知道循环次数的循环结构(2)在 For 循环语句中,我们默认循环变量每次的增量为 1.如果需要考虑增加量不为 1 的情况,需使用参数 step.例如:“输出 1 到 100
11、内的所有奇数”的算法语句为:For i1 To 100 Step 2 输出 iNext第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 请阅读用 For 语句给出的算法,画出算法框图并说明该算法的处理功能S0For i1 To 20 Step 2SSiNext输出 S第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 解析 算法的框图如图所示,因此,这个算法实际上处理的是求和S135791113151719.第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 Do Loop语句的应用以下给出的是用循环语句编写的一个算法,
12、根据该算法写出此题的算法功能,并画出相应的算法框图I1Do aI Mod 2If a0 Then 输出I End If II1Loop While I6000,试设计一个程序,寻找满足条件的最小n值解析 S0i1DoSSiii2Loop Whlie S6000ni2输出n第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 循环语句的综合应用设计一个求20个数的平均数的算法,分别用For语句和Do Loop语句写出其程序思路分析 可用一个循环依次输入20个数,并将它们的和存在一个变量S中,最后用S除以20即可得到它们的平均数第二章 3 3.2 成才之路 高中新课程 学习指
13、导 北师大版 数学 必修3 规范解答 用Do Loop语句程序如下;S0i1Do输入xSSxii1Loop While i20aS/20输出a第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 用For语句则程序如下:S0For i1 To 20输入 xSSxii1NextaS/20输出a规律总结 本例既可以用For语句写出程序也可以使用Do Loop语句写出程序,要注意这类题目特点,选择恰当的方法第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 根据下面的程序,仔细观察后画出其算法的流程图 i1Doxiyx*x*xii0.2Loop Whil
14、e i100输出sum第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 辨析 错误的原因是对循环语句的结构不清,应用混乱错解1中“i1”不用写错解2中“Loop While i100”应改成“Loop While i100”,因为Do Loop语句的一般格式为:Do循环体Loop While 条件为真第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 正解1 用For语句描述如下:sum0For i1 To 100sumsumiNext输出sum第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 正解2 用Do Loop语句描述如下:i1sum0Dosumsumiii1Loop While i100输出sum第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 规律总结 Do Loop语句是先执行一次循环体,再判断是否满足条件,若满足,再执行循环体,然后再检查是否满足条件,若满足,再执行循环体,再判断是否满足条件,如此反复,直到不满足条件为止第二章 3 3.2 成才之路 高中新课程 学习指导 北师大版 数学 必修3 课时作业(点此链接)