2020-2021学年高中人教A版数学必修3学案 1.2.3 循环语句 Word版含解析

文档属性

名称 2020-2021学年高中人教A版数学必修3学案 1.2.3 循环语句 Word版含解析
格式 doc
文件大小 550.0KB
资源类型 教案
版本资源 人教新课标A版
科目 数学
更新时间 2021-04-15 08:58:22

图片预览

文档简介

1.2.3 循环语句
学 习 目 标 核 心 素 养
1.理解循环语句的两种格式及功能.(重点) 2.会应用条件语句和循环语句编写程序.(难点)
3.掌握当型循环和直到型循环的条件.(易混点) 1.通过学习循环语句的两种不同格式,培养学生逻辑推理素养.
2.借助循环语句编写,提升数学抽象素养.
循环语句的格式、功能及相应的程序框图
名称 直到型(UNTIL语句) 当型(WHILE语句)
格式 DO
 循环体
LOOP_UNTIL条件 WHILE条件
 循环体
WEND
功能 先执行一次DO和UNTIL之间的循环体,再判断UNTIL后的条件是否符合,如果不符合,继续执行循环体然后再检查上述条件,如果仍不符合,再次执行循环体,直到条件符合时为止.这时不再执行循环体,跳出循环体执行UNTIL语句后面的语句 先判断条件的真假,如果条件符合,则执行WHILE和WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止,这时不再执行循环体,跳出循环体,执行WEND后面的语句
对应程序框图

思考:两种循环语句的格式是截然不同的,它们之间有没有联系?
[提示] 两种语句都可以实现计算机反复执行循环体的目的,只是表达形式不同.一般地,WHILE语句和UNTIL语句可以相互转化.
1.下列问题,设计程序求解时,要用到循环语句的有(  )
①输入每个同学的数学成绩,求全班同学的平均分;
②求分段函数的函数值;
③求连续100个自然数的平方和;
④输入100个数,从中找出最大的数.
A.1个        B.2个
C.3个 D.4个
C [①③④要用到循环语句.]
2.下列循环语句,循环终止时,i等于(  )
A.3     B.4
C.5 D.6
D [当i=6时,满足i>5,终止循环.]
3.下面程序的运行结果是________.

15 [第一次循环,S=0×2+1=1,i=2;第二次循环,S=1×2+1=3,i=3;第三次循环,S=3×2+1=7,i=4;第四次循环,S=7×2+1=15,i=5,终止循环,输出S值为15.]
4.下列程序的运行结果是________.
3 [第一次循环x=110,i=2;第二次循环,x=120,i=3,终止循环,输出i的值为3.]
WHILE语句的应用
【例1】 如果执行下面程序后输出的结果是132,那么在程序中WHILE后面的条件应为(  )

A.i>11   B.i>=11    C.i<=11   D.i<11
思路点拨:运行程序寻找规律,进而确定条件.
B [由题意S=1,i=12,满足条件;S=1×12=12,i=12-1=11满足条件;S=12×11=132,i=10,由题意此时应输出S值,即不满足条件,退出循环,故WHILE后条件应为“i>=11”.]
使用WHILE语句的注意点
(1)当型循环语句以WHILE开头,以WEND结束.
(2)执行WHILE语句时,先判断条件,再执行循环体,然后再判断条件,再执行循环体,反复执行,直至条件不满足.
(3)WHILE语句中的条件是指循环体的条件,满足此条件时,执行循环体,不满足时,则执行WEND后面的语句.
(4)WHILE语句先判断条件,再执行循环体,因此,循环体可能一次也不执行就退出循环.
1.读程序,回答下列问题:

(1)若输入n=3,则输出的结果为________.
(2)此程序对应的计算式子是________.
(3)程序中的循环语句对应________型循环结构.
(1) (2)++…+ (3)当 [(1)输入n=3,当i=1时,
S=0+=;
当i=2时,S=+=;
当i=3时,S=+=,结束循环,此时输出S=.
(2)此程序是用于计算++…+的值.
(3)这是WHILE语句,对应的是当型循环结构.]
UNTIL语句的应用
【例2】 下列两个程序(1)和(2)的运行结果分别是(  )

A.7,7 B.7,6
C.6,7 D.6,6
思路点拨:认真观察程序(1)(2)有什么不同点,这种不同点对输出结果有怎样的影响?
B [程序(1):S=0,i=0+1=1,不满足S>20,执行循环;S=1,i=1+1=2,不满足S>20,执行循环;S=1+2=3,i=2+1=3,不满足S>20,执行循环;S=3+3=6,i=3+1=4,不满足S>20,执行循环;S=6+4=10,i=4+1=5,不满足S>20,执行循环;S=10+5=15,i=5+1=6,不满足S>20,执行循环;S=15+6=21,i=6+1=7,满足S>20,退出循环,输出i,此时i=7.
程序(2):i=0+1=1,S=1,不满足S>20,执行循环;i=1+1=2,S=1+2=3,不满足S>20,执行循环;i=2+1=3,S=3+3=6,不满足S>20,执行循环;i=3+1=4,S=6+4=10,不满足S>20,执行循环;i=4+1=5,S=10+5=15,不满足S>20,执行循环;i=5+1=6,S=15+6=21,满足S>20,退出循环.输出i,此时i=6.故选B.]
对UNTIL语句的几点说明
(1)直到型循环语句中先执行一次循环体,再判断条件是否满足,以决定继续循环还是退出循环.
(2)循环次数的控制往往是判断条件,在循环体内要控制条件的改变,否则会陷入死循环.
(3)控制循环次数的变量要综合考虑初始化时和LOOP UNTIL后两处,若初始值为1,则循环体中累加,若初始值为循环的次数,则循环体中控制循环次数的变量要递减.
2.(1)下面为一个求1,2,3,…,20的平均数的程序,在横线上应填充的语句为(  )
A.i>20 B.i<20
C.i>=20 D.i<=20
(2)如图程序执行后输出的结果是________.
(1)A (2)990 [(1)由题意,共有20个数,故横线处应填i>20.
(2)i=11时,S=1×11=11;i=10时,s=11×10=110;i=9时,S=110×9=990;i=8时i<9成立终止循环,输出值为990.]
循环语句的设计
[探究问题]
1.循环语句的作用是什么?什么样的问题的解决要用到循环语句?
[提示] 循环语句的作用:循环语句主要用于循环结构,在需要处理反复执行的运算任务,如累加求和、累乘求积等问题时,常常要用到循环语句.
2.WHILE语句与UNTIL语句可以相互转化吗?转化时该注意什么?
[提示] WHILE语句与UNTIL语句一般可以相互转化,转化时循环语句的格式变了,另外尤其注意要改变条件.
3.在同一种条件语句格式下,如果改变了循环条件,程序运行结果一定改变吗?
[提示] 不一定.
【例3】 写出计算12+32+52+…+992的程序(用两种方法)
思路点拨:

[解] 法一:用WHILE语句编写程序如下:
法二:用UNTIL语句编写程序如下:
1.(设问)如果把WHILE语句的条件“i<=99”改为“i<99”,所计算的问题会如何?如果改为“i<100”或“i<=100”呢?
[解] 如果将WHILE语句的条件由“i≤99”改为“i<99”,实际上是i只取到97,少运行一次循环,解决的是计算12+32+52+…+972的结果.如果改为“i<100”或“i<=100”,没改变i的最终取值,仍然是计算12+32+52+…+992的值.
2.(变条件)如果要计算1+++…+的值,该怎么设计程序语句?
[解] 只要把循环体中语句“S=S+i^2”改为“S=S+1/i”即可.
两种循环语句的异同
两种循环语句的相同点是:(1)进入循环前的语句相同;(2)循环体相同;(3)输出部分相同.
不同点是:(1)循环条件的位置不同;(2)循环条件不同.
应用循环语句编写程序要注意以下三点:
(1)循环语句中的变量一定要合理设置初始值.
(2)循环语句在循环的过程中需要有“结束”的语句,即有跳出循环的机会.
(3)在循环中要改变循环条件的成立因素.
程序每执行一次循环体,循环条件中涉及到的变量就会发生改变,且在步步逼近跳出循环体的条件.
1.判断下列结论的正误(正确的打“√”,错误的打“×”)
(1)UNTIL语句是先执行一次循环体,后判断条件. (  )
(2)WHILE语句是先判断条件,后执行循环体. (  )
(3)UNTIL语句是条件满足时执行循环体,条件不满足时,结束循环;而WHILE语句是当条件不满足时执行循环体,满足时结束循环. (  )
[答案] (1)√ (2)√ (3)×
2.下列四个程序框图中能用直到型语句描述的是(  )
A [与直到型语句对应的是直到型结构;选A.]
3.已知程序如下,则输出结果S=________.
56 [根据程序逐次写出每次循环的结果.第一次循环,i=2,S=4;第二次循环,i=4,S=4+16=20;第三次循环,i=6,S=20+36=56.由于i=6不满足条件,跳出循环,输出S,结果为56.]
4.根据如图所示的程序框图写出相应的程序.
[解] 程序如下: