《2017-2018学年高中数学 第二章 算法初步 2.3 几种基本语句 2.3.2 循环语句 北师大版必修3》由会员分享,可在线阅读,更多相关《2017-2018学年高中数学 第二章 算法初步 2.3 几种基本语句 2.3.2 循环语句 北师大版必修3(24页珍藏版)》请在金锄头文库上搜索。
1、3.2 循环语句 1.理解For语句和Do Loop语句在算法语句中的作用. 2.能举例说明循环语句的作用,并掌握循环流程分析的方法,进一 步体会算法的基本思想. 1.For语句 (1)一般形式: For循环变量=初始值To终值 循环体 Next (2)适用于预先知道循环次数的循环结构. 名师点拨当遇到For语句时,先看循环变量的取值范围,循环变量 控制着算法语句的执行,在其范围内,循环体将被反复执行,直到执 行完毕跳到Next语句后,执行后面的语句. 【做一做1】 若执行下面的算法语句,则输出的S为( ) S=0 For M=1 To 10 S=S+M Next 输出S A.1B.5C.10
2、 D.55 答案:D 2.Do Loop语句 (1)一般形式: Do 循环体 Loop While条件为真 (2)适用于预先不知道循环次数的循环结构. (3)Do Loop语句的执行流程:先进入循环体,执行一次循环体后, 检查While后的条件是否被满足,“是”则继续执行循环体,“否”则退 出循环体. 温馨提示结合循环结构的框图,用Do Loop语句来表示算法时,注 意验证条件的正误. 【做一做2-1】 下面为一个求30个数的平均数的程序,在横线上 应填充的语句为( ) S=0 i=1 Do 输入xi S=S+xi i=i+1 Loop While a=S/30 输出a A.i30B.i=30
3、D.i=10 答案:B 题型一题型二题型三题型四 对循环语句的理解 【例1】 如果执行下面的算法语句后输出的结果是72,那么在 While后面的“条件”应为( ) i=9 S=1 Do S=S*i i=i-1 Loop While “条件” 输出S A.i8B.i=8C.i=8D.i=8”. 答案:B 反思判断含有循环语句的算法的执行结果的关键是明确循环终 止的条件.在Do Loop语句中,当条件不满足时终止循环;在For语句 中,当循环变量取终值时,再执行一次循环体才终止循环. 题型一题型二题型三题型四 【变式训练1】 写出执行下列算法语句后输出的结果. (1)a=2 Do a=a+2 Lo
4、op While a500 的最小自然数n. 分析:结束循环的条件是和大于500,可以用累加的方法,一个数一 个数地加,每加一个数就把和与500比较,直到大于500为止. 解:用Do Loop语句描述如下. i=1 sum=0 Do sum=sum+i i=i+2 Loop While sum=500 i=i-2 输出i 题型一题型二题型三题型四 反思对于重复执行某操作的算法,一般用循环语句来实现.如果预 先不知道循环的次数,一般用Do Loop语句来实现. 题型一题型二题型三题型四 【变式训练3】 请用基本语句设计一个算法,求平方值小于 1 000的所有正整数的平方和. 解:用Do Loop
5、语句描述如下. S=0 i=1 Do S=S+i*i i=i+1 Loop While i*i1 000 输出S 题型一题型二题型三题型四 易错辨析 易错点:不注意For语句和Do Loop语句的使用条件致错 【例4】 若12+22+n2100,试设计算法语句,求出满足条件的 最大整数n. 错解:算法语句如下: i=1 S=0 For i=1 To n S=S+i*i i=i+1 Next 输出i-2 题型一题型二题型三题型四 错因分析:本题中不知道循环变量的终止值,故不能用For语句来 描述算法,且For语句中不能有i=1和i=i+1. 正解:算法语句如下: i=1 S=0 Do S=S+i
6、*i i=i+1 Loop While S100 输出i-2 12345 1.下列关于For语句的说法错误的是( ) A.在For语句中,Step增量为1,可以省略不写,若为其他值,则不可省 略 B.在For语句中,循环表达式也称为循环体 C.理解For语句的关键是理解循环变量的初始值、终值 D.在For语句中,“Next”控制结束一次循环 解析:理解For语句的关键是理解循环体在计算机中是如何执行的, 这个执行过程由循环变量的初始值、终值、循环体共同决定. 答案:C 12345 2.关于Do Loop语句叙述正确的是( ) A.至少执行循环体一次 B.最多执行一次循环体 C.满足条件时执行循
7、环体 D.遇到Do Loop就结束 解析:对于Do Loop循环语句,先执行循环体,再根据条件是否成立来 确定执行循环体,因此至少执行一次循环体. 答案:A 12345 3.下面算法语句的执行结果为( ) For i=1 To 7 j=i+2 S=2*j+3 Next 输出S A.17 B.19C.21 D.23 解析:该算法语句为For语句,循环次数为7,最后循环结束时 ,i=7,j=9,故此时S=29+3=21. 答案:C 12345 (2)_. i=1 S=0 Do (1) i=i+1 Loop While (2) 输出S 答案:(1)S=S+1/i*(i+3) (2)i=50 12345 5.设计一个计算13599的算法语句. 解:算法语如下. S=1 i=3 Do S=S*i i=i+2 Loop While i=99 输出S