人教A版高中数学必修3 1.2.3 循环语句(35张PPT课件+练习)

文档属性

名称 人教A版高中数学必修3 1.2.3 循环语句(35张PPT课件+练习)
格式 zip
文件大小 808.9KB
资源类型 教案
版本资源 人教新课标A版
科目 数学
更新时间 2019-12-03 22:19:56

文档简介

1.2.3 循环语句
课后篇巩固提升
/基础巩固
1.下列四个程序框图中,能用UNTIL语句描述的是(  )
                
/
解析UNTIL语句对应的程序是先进入循环体,再判断条件是否满足,若满足退出循环体,否则再次进入循环体.
答案A
2.在UNTIL语句的一般形式“LOOP UNTIL M”中,M表示(  )
A.循环变量 B.循环体
C.终止条件 D.终止条件为真
解析UNTIL语句在执行时,当条件未满足时执行循环体的命令,直到条件满足时退出循环体,因此“LOOP UNTIL M”中的M表示退出循环体的条件满足,即M表示终止条件为真.
答案D
3.如图,程序的循环次数为(  )
x=0
WHILE x<20
 x=x+1
 x=x∧2
WEND
PRINT x
END
A.1 B.2 C.3 D.4
解析第1次循环,x=1,x=1,第2次循环,x=2,x=4;第3次循环,x=5,x=25,不满足x<20,终止运行.故选C.
答案C
4.下列程序运行后,输出的k的值为(  )
k=0
S=0
WHILE S<100
 S=S+2∧S
 k=k+1
WEND
PRINT k
END
A.4 B.5 C.6 D.7
解析第一次循环得S=0+20=1,k=1;第二次循环得S=1+21=3,k=2;第三次循环得S=3+23=11,k=3;第四次循环得S=11+211=2 059,k=4,但此时不满足条件S<100,终止循环,输出k=4,所以选A.
答案A
5.执行下面的程序后,输出的x的值是    .?
i=1
x=4
WHILE i<10
 x=x+i
 i=i+3
WEND
PRINT x
END
解析模拟程序的运行,可得i=1,x=4;
满足条件i<10,执行循环体,x=5,i=4;
满足条件i<10,执行循环体,x=9,i=7;
满足条件i<10,执行循环体,x=16,i=10;
此时,不满足条件i<10,退出循环,输出x的值为16.
答案16
6.下面的程序运行后输出的值为     .?
i=0
DO
 i=i+1
LOOP UNTIL i*i>=2 018
i=i-1
PRINT i
END
解析由程序知,当i2≥2 018时,i的最小值为45,
又把i-1=44的值赋给i,
∴i=44.
答案44
7.如图所示的程序中,要求从键盘上输入n后求1+2+3+…+n的和,则横线上缺的程序项是①     ,②     .?
INPUT  ① ?
S=0
i=1
WHILE  ② ?
 S=S+i
 i=i+1
WEND
PRINT “S=”;S
END
解析本题综合考查程序的设计和功能,着重考查了循环语句中条件的使用.程序应先输入一个n的值,确定要计算前多少项的和,②处应确定计数变量i满足的条件,即确定终止条件.
答案“n=”;n i<=n
8.分别用WHILE语句和UNTIL语句编写程序,求出使不等式12+22+32+…+n2<1 000成立的n的最大整数值.
解法一利用WHILE语句编写程序.
s=1
i=2
WHILE s<1 000
 s=s+i∧2
 i=i+1
WEND
i=i-2
PRINT “使不等式成立的n的最大整数值为:”;i
END
解法二利用UNTIL语句编写程序.
s=1
i=2
DO
 s=s+i∧2
 i=i+1
LOOP UNTIL s>=1 000
i=i-2
PRINT “使不等式成立的n的最大整数值为:”;i
END
9.意大利数学家菲波那契在1202年出版的一本书里提出了这样的一个问题:一对兔子饲养到第二个月进入成年,第三个月生一对小兔,以后每个月生一对小兔,所生小兔能全部存活并且也是第二个月成年,第三个月生一对小兔,以后每月生一对小兔.问这样下去到年底应有多少对兔子?试画出解决此问题的程序框图,并编写相应的程序.
/
解由题意可知,第一个月有一对小兔,每二个月有一对成年兔子,第三个月有两对兔子,从第三个月开始,每个月的兔子对数是前面两个月兔子对数的和.设第N个月有F对兔子,第N-1个月有S对兔子,第N-2个月有Q对兔子,则F=S+Q.第N+1个月时,式中变量S的新值应变为第N个月兔子的对数(F的旧值),变量Q的新值应变为第N-1个月兔子的对数(S的旧值),这样,用S+Q求出变量F的新值就是第N+1个月兔子的对数,以此类推,可以得到一列数,这列数的第12项就是年底应有兔子的对数.我们可以先确定前两个月的兔子对数均为1,以此为基准,构造一个循环结构,让表示“第X个月”的i从3逐次增加1,一直变化到12,最后一次循环得到的F就是所求结果.程序框图如图所示.程序如下:
S=1
Q=1
i=3
WHILE i<=12
 F=S+Q
 Q=S
 S=F
 i=i+1
WEND
PRINT F
END
/能力提升
1.如果以下程序运行后输出的结果是132,那么在程序中UNTIL后面的“条件”应为(  )
i=12
S=1
DO
 S=S*i
 i=i-1
LOOP UNTIL 条件
PRINT S
END
A.i>11 B.i=11
C.i<=11 D.i<11
解析当i=12,S=1时,
S=S×i=1×12=12,i=i-1=11;
当i=11,S=12时,
S=S×i=12×11=132,i=i-1=10.
由题意,知输出的结果为132,并且此循环为直到型循环,所以i=10应满足条件,故选D.
答案D
2.阅读下列甲、乙两个程序:
甲:          乙:
i=1 S=0 WHILE i<=100  S=S+i  i=i+1 WEND PRINT S END i=100 S=0 DO  S=S+i  i=i-1 LOOP UNTIL i<1 PRINT S END
对甲、乙两个程序和输出结果判断正确的是(  )
A.程序不同,结果不同
B.程序不同,结果相同
C.程序相同,结果不同
D.程序相同,结果相同
解析甲程序开始时i=1,S=0,第一次执行循环体后,S=0+1=1,i=1+1=2,条件符合;第二次执行循环体后,S=1+2,i=2+1=3;……根据程序可知当i=100时,条件符合,执行循环体后,S=1+2+3+…+100,i=101;当i=101时,条件不符合,计算机跳出循环,接着执行WEND之后的语句,即输出S.故S=1+2+3+…+100.
乙程序开始时i=100,S=0,第一次执行循环体后,S=0+100=100,i=100-1=99,条件不符合;第二次执行循环体后,S=100+99,i=99-1=98,条件不符合;……根据程序可知当i=0时,条件符合,终止循环,输出S.故S=100+99+…+1.
综上可知,两程序不同,结果相同.
答案B
3.如图所示的程序,若最终输出的结果是
63
64
,则在程序中横线处可填入的语句为(  )
S=0
n=2
i=1
DO
 S=S+1/n
 n=2*n
 i=i+1
LOOP UNTIL    ?
PRINT S
END
A.i>=8
B.i>=7
C.i<7
D.i<8
解析因为n=2,i=1,
第1次循环:S=0+
1
2
=
1
2
,n=4,i=2;
第2次循环:S=
1
2
+
1
4
=
3
4
,n=8,i=3;
第3次循环:S=
3
4
+
1
8
=
7
8
,n=16,i=4;
第4次循环:S=
7
8
+
1
16
=
15
16
,n=32,i=5;
第5次循环:S=
15
16
+
1
32
=
31
32
,n=64,i=6;
第6次循环:S=
31
32
+
1
64
=
63
64
,n=128,i=7.此时输出的S=
63
64
,故可填i>=7.
答案B
4.分别写出下列程序的运行结果:(1)    ;(2)    .?
(1)         (2)
S=0 i=0 DO  S=S+i  i=i+1 LOOP UNTIL S>20 PRINT i END   S=0 i=0 DO  i=i+1  S=S+i LOOP UNTIL S>20 PRINT i END
解析(1)S=0,i=0;S=0,i=1;S=1,i=2;S=3,i=3;S=6,i=4;S=10,i=5;S=15,i=6;S=21,i=7,此时满足条件,循环结束,输出i=7.
(2)S=0,i=0;i=1,S=1;i=2,S=3;i=3,S=6;i=4,S=10;i=5,S=15;i=6,S=21,此时满足条件,循环结束,输出i=6.
答案(1)7 (2)6
5.求200以内(包括200)的所有偶数和,试用两种循环结构画出其程序框图并编写程序.
解当型循环,程序框图如图所示:
/
程序为:
i=2
sum=0
WHILE i<=200
 sum=sum+i
 i=i+2
WEND
PRINT “偶数和为:”;sum
END
直到型循环,程序框图如图所示:
/
程序为:
i=2
sum=0
DO
 sum=sum+i
 i=i+2
LOOP UNTIL i>200
PRINT “偶数和为:”;sum
END
6.给出30个数:1,2,4,7,11,…,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依次类推,要计算这30个数的和,现在已知该问题的算法的程序框图如图所示.
/
(1)请在图中判断框和处理框内填上合适的语句,使之能实现该题的算法功能;
(2)根据程序框图写出程序.
解(1)该算法使用了当型循环结构,因为是求30个数的和,所以循环体应执行30次,其中i是计数变量,因此判断框内的条件就是限制计数变量i的,故应为i≤30.
算法中的变量p实质是表示参与求和的数,由于它也是变化的,且满足第i个数比其前一个数大i-1,第i+1个数比其前一个数大i,
故处理框内应为p=p+i.
故①处应填i≤30?;②处应填p=p+i.
(2)根据程序框图,可设计如下程序:
i=1
p=1
S=0
WHILE i<=30
 S=S+p
 p=p+i
 i=i+1
WEND
PRINT S
END
课件35张PPT。1.2.3 循环语句一、直到型循环语句
1.直到型循环结构的程序框图是什么?2.直到型循环结构对应的循环语句的一般格式和功能分别是什么?
提示直到型循环结构对应的一般格式:
DO
循环体
LOOP UNTIL 条件
直到型循环语句的功能:
先执行一次DO和UNTIL之间的循环体,再对UNTIL后的条件进行判断,如果条件不符合,继续执行循环体;然后再检查上述条件,如果条件仍不符合,再次执行循环体,直到条件符合时为止.这时不再执行循环体,跳出循环体执行UNTIL语句之后的语句.3.做一做1:判断题
(1)循环语句与程序框图中的循环结构相对应. (  )
(2)循环语句中一定有条件语句,条件语句中一定有循环语句. (  )
答案:(1)√ (2)×
4.做一做2:设计程序求解下列问题时,不能用循环语句的是(  )
A.输入每个同学的数学成绩,求全班同学的平均数学成绩
B.求分段函数的函数值
C.求连续100个自然数的平方和
D.输入100个数,从中找出最大的数
解析:B是求分段函数的函数值,需要用条件语句;
A,C,D涉及累加和多次赋值(重复执行某些步骤),均可以用循环语句解决.
答案:B二、当型循环语句
1.当型循环结构的程序框图是什么?
提示当型循环结构:2.当型循环结构对应的循环语句的一般格式和功能分别是什么?
提示当型循环结构对应的循环语句的一般格式:
WHILE 条件
循环体
WEND
当型循环语句的功能:
先判断条件的真假,如果条件符合,就执行WHILE和WEND之间的循环体,然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止,这时不再执行循环体,跳出循环体,执行WEND之后的语句.3.做一做3:判断题
(1)UNTIL语句中先进行条件判断,再执行循环体;WHILE语句中先执行循环体,再进行条件判断. (  )
(2)直到型循环语句和当型循环语句执行循环体的次数都可能是零. (  )
答案:(1)× (2)×4.做一做4:关于下列程序段的说法正确的是(  )
A.循环体执行8次
B.循环体无限循环
C.循环体一次也不执行
D.循环体只执行1次
解析:对于WHILE语句,条件为真,则执行循环体.而本题k=8,不符合条件k=0,所以循环体一次也不执行.
答案:Ck=8
WHILE k=0
 k=k+1
WEND探究一探究二探究三思想方法例1 画出计算12+32+52+…+9992的值的程序框图,并写出程序.
分析UNTIL语句的应用 当堂检测探究一探究二探究三思想方法解:由题意知,各项指数相同,底数相差2,可以借助循环结构设计算法.
程序框图如图所示.   程序如下:i=1 S=0 DO  S=S+i∧2  i=i+2 LOOP UNTIL i>999 PRINT S END当堂检测探究一探究二探究三思想方法互动探究若【例1】改为求使得12+32+52+…+n2>2 019的最小自然数n的程序框图,试把它设计成程序.
解程序框图如图所示:  对应的程序如下:S=0 i=1 DO  S=S+i∧2  i=i+2 LOOP UNTIL S>2 018 PRINT “最小自然数为:”;i-2 END 当堂检测探究一探究二探究三思想方法反思感悟1.UNTIL语句的适用类型
直到型循环又称“后测试”循环,也就是我们所讲的“先执行后测试”“先循环后判断”.
2.使用UNTIL语句应关注两点:
(1)DO语句只是循环的开始标记,遇到DO语句,程序只是记住这个标记,其他什么也不做,接着执行后面的循环体,在执行一次循环体后,再检查LOOP UNTIL语句中的条件是否成立,如果不成立,就重复执行循环体,直到条件符合时退出循环.
(2)在循环体内,应注意务必有相应的语句使“条件”改变,保证能终止循环,否则循环将无休止地进行下去.当堂检测探究一探究二探究三思想方法例2 设计一个算法,求1 000以内能被3整除的正整数的和,写出算法分析,画出程序框图,并编写程序.
分析第1个能被3整除的正整数为3,以后每个数比前一个数大3,最后一个数要比1 000小,因此要用循环结构来设计算法.
解:算法分析如下:
第一步,令i=3,S=0.
第二步,若i<1 000,则执行第三步;否则,输出S,
结束算法.
第三步,S=S+i,i=i+3,返回第二步.WHILE语句的应用 当堂检测探究一探究二探究三思想方法程序如下:程序框图如图所示. i=3 S=0 WHILE i<1 000  S=S+i  i=i+3 WEND PRINT S END当堂检测探究一探究二探究三思想方法反思感悟WHILE语句的三点注意
(1)计算机执行当型循环语句时,先判断条件的真假,若条件为真,则执行循环体,若条件为假则退出.这是确定是否应用当型循环语句的关键.
(2)在当型循环语句中,WHILE和WEND成对出现.
(3)判断条件往往是控制循环次数的变量.当堂检测探究一探究二探究三思想方法变式训练运行下面的程序后,输出的结果为 (  )
i=1
WHILE i<7
 i=i+1
 S=2*i-1
 i=i+2
WEND
PRINT S,i
END
A.13,7 B.7,4
C.9,7 D.9,5当堂检测探究一探究二探究三思想方法解析:第一次循环,i=1+1=2,S=2×2-1=3,i=2+2=4.第二次循环,i=4+1=5,S=2×5-1=9;i=5+2=7.第三次循环条件不成立,输出S=9,i=7,故选C.
答案:C当堂检测探究一探究二探究三思想方法两种循环语句的相互转化
例3编写一个程序,求满足 的n的最小值.
分析循环次数不确定→逐项累加、一直检验→直到第一次得到满足题意的n的值当堂检测探究一探究二探究三思想方法解:编写程序如下: 当堂检测探究一探究二探究三思想方法反思感悟当型循环语句与直到型循环语句互相转化的三个注意点
(1)计算机执行的顺序不同;
(2)条件的内容不同;
(3)对循环体执行的次数不同.当堂检测探究一探究二探究三思想方法化归与转化思想在算法中的应用
典例 在我国《算经十书》之一《孙子算经》中有文:今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何.请设计程序解决此问题,并画出程序框图.
【审题视角】构建数学模型→算法分析→画出程序框图→写出程序语句当堂检测探究一探究二探究三思想方法解:设所求的数为m,本题相当于求解关于x,y,z的不定方程
因此,m应同时满足以下三个条件:
①m MOD 3=2;
②m MOD 5=3;
③m MOD 7=2.
从m=2开始检验条件,若有任何一个
不满足,则m加1后再检验条件,直到满足为止.
程序框图如图所示.当堂检测探究一探究二探究三思想方法程序如下:
m=2
WHILE m MOD 3<>2 OR m MOD 5<>3 OR
m MOD 7<>2
 m=m+1
WEND
PRINT “m=”;m
END当堂检测探究一探究二探究三思想方法方法点睛1.化归与转化思想是指在研究解决数学问题时采用某种手段将问题通过变换使之转化,进而使问题得到解决的一种解题策略.需要我们依据问题本身所提供的信息,利用所谓的动态思维,去寻找有利于问题解决的变换途径和方法,并从中进行选择,做到生疏变换成熟悉、复杂变换成简单、抽象变换成直观、含糊变换成明朗.
2.在画程序框图时可以先写出算法,由算法画出框图;在写程序时可以先写出算法,再画出框图,最后转化为程序语言;在解:应用问题时,可以先构建数学模型,再转化为算法、程序框图、程序语句,进行合理的转化是解题的关键.当堂检测探究一探究二探究三思想方法变式训练某高中男子体育小组的50 m赛跑成绩(单位:s)如下:6.4,6.5,7.0,6.8,7.1,7.3,6.9,7.4,7.5,7.6,6.3,6.4,6.4,6.5,6.7,7.1,6.9,6.4,7.1,7.0.设计一个程序从这些成绩中搜索出小于6.8 s的成绩,并画出程序框图.解:程序如下:
i=1
WHILE i<=20
 INPUT Gi
 IF Gi<6.8 THEN
PRINT i,Gi
 END IF
 i=i+1
WEND
END当堂检测探究一探究二探究三思想方法程序框图如图所示. 当堂检测探究一探究二探究三思想方法当堂检测1.以下程序:
x=-2
DO
 x=x*x
LOOP UNTIL x>10
PRINT x
END
A.循环体执行1次
B.循环体执行2次
C.循环体执行4次
D.循环体执行10次探究一探究二探究三思想方法当堂检测解析:本题考查UNTIL语句的执行方式.
第一次执行循环体时,x=(-2)×(-2)=4,不符合条件,
继续执行循环体,此时x=4×4=16,符合条件,结束循环,
循环体执行2次.
答案:B探究一探究二探究三思想方法当堂检测2.阅读下面的程序:
i=1
S=0
DO
 INPUT x
 S=S+x
 i=i+1
LOOP UNTIL i>10
A=S/10
PRINT A
END探究一探究二探究三思想方法当堂检测该程序的作用是(  )
A.计算9个数的和
B.计算9个数的平均数
C.计算10个数的和
D.计算10个数的平均数
解析:根据程序可知,共输入10个数,由“A=S/10”可知是计算10个数的平均数.
答案:D探究一探究二探究三思想方法当堂检测3.下列循环语句,循环终止时,i等于(  )
i=1
DO
 i=i+1
LOOP UNTIL i>5
END
A.3 B.4 C.5 D.6
解析:该循环语句是UNTIL语句,当条件成立时退出循环,D正确.
答案:D探究一探究二探究三思想方法当堂检测4.下面的程序运行后第3次输出的数是     .?
i=1
x=1
DO
PRINT x
 i=i+1
 x=x+1/2
LOOP UNTIL i>5
END探究一探究二探究三思想方法当堂检测解析:该程序中关键是循环语句,
第一次输出的数是1,
答案:2探究一探究二探究三思想方法当堂检测5.下面的程序执行后输出的结果是     .?
n=5
S=0
DO
 S=S+n
 n=n-1
LOOP UNTIL S>=15
PRINT n
END
解析:当n=5时,S=5;当n=4时,S=9;当n=3时,S=12;当n=2时,S=14;当n=1时,S=15.执行n=n-1得n=0.所以输出结果是0.
答案:0