人教课标版(B版)高中数学必修3《循环语句》教学课件(18+14张ppt)

文档属性

名称 人教课标版(B版)高中数学必修3《循环语句》教学课件(18+14张ppt)
格式 zip
文件大小 430.9KB
资源类型 教案
版本资源 人教新课标B版
科目 数学
更新时间 2021-12-29 15:49:40

文档简介

(共14张PPT)
1.2.3循环语句
相传古代印度国王舍罕要褒赏他聪明能干的宰相达依尔(国际象棋的发明者),问他想要什么,达依尔回答说:“国王只要在国际象棋棋盘的第1个格子里放1粒麦子,第2个格子里放2粒,第3个格子里放4粒,以后按此比例每格加一倍,一直放到第64个格子(国际象棋棋盘是8×8=64格),我就感恩不尽,其他的我什么也不要了.”国王想:“这还不容易!”让人扛来一袋麦子,但不到一会儿就全用完了,再扛来一袋很快又没有了,结果全印度的粮食全部用完还不够.国王纳闷,怎样也算不清这笔账.
情景设想
问题1:设计出国王计算多少粒麦子的算法.
提示:算法步骤如下:
第一步,令i=0,S=0.
第二步,P=2i,S=S+P,i=i+1.
第三步,如果i≤63,那么返回第二步;
否则,执行第四步.
第四步,输出S.
问题2:根据上述算法画出程序框图
提示:
问题3:这类问题能否用计算机处理?
提示:可以.应将算法过程转化为计算机语言
名称 直到型 当型
程序框图
格式 DO
循环体
条件 WHILE 条件
循环体
循环语句的格式、功能
新知学习
LOOP UNTIL
WEND
名称 直到型 当型
执行步骤 先执行一次 和
之间的循环体,再判断UNTIL后的条件是否符合,如果不符合,继续 ,然后再检查上述条件,如果仍不符合,再次执行循环体直到某一次 为止.这时不再执行循环体,跳出循环体执行 语句 之后的语句 先判断条件的真假,如果
,则执行WHILE和WEND之间的循环体,然后再检查上述条件,如果 ,再次执行循环体,这个过程反复进行,直到某一次
为止,这时不再执行循环体,跳出循环体,执行 之后的语句
DO
UNTIL
执行循环体
条件符合
UNTIL
条件符合
条件仍符合
条件不
符合
WEND
1.当型循环是先判断(条件),后执行(循环体),而直到型循环则是先执行(循环体),后判断(条件).
2.当型循环是当条件满足时执行循环体,不满足时结束循环,而直到型循环则是条件不满足时执行循环体,条件满足时结束循环.
3.直到型循环至少执行一次循环体,而当型循环可能一次也不执行循环体.
4.在设计程序时,一般说来,这两种语句用哪一种都可以,但在某种限定条件下,有时用WHILE语句较好表达,有时用UNTIL语句较好表达.
直到型循环和当型循环的区别:
[例1] 给出的30个数,1,2,4,7,11,
…,其规律是第1个数是1,第2个数比
第1个数大1,第3个数比第二个数大2,
第4个数比第3个数大3…依次类推,要
求计算这30个数的和,先将右面所给
出的程序框图补充完整,再依据程序
框图写出程序:(1)把程序框图补充完整:
(1)________;②________;
(2)写出程序
当型循环语句
[思路点拨] (1)根据循环结构的程序框图可得①②.
(2)根据当型循环语句的格式写程序
[一点通]
 1.计算机执行当型循环语句时,先判断条件的真假,若条件为真,执行循环体,若为假则退出,这是确定是否应用当型语句的关键.
2.当型循环语句中WHILE和WEND成对出现.
3.判断条件往往是控制循环次数的变量.
[例2] 画出计算12+32+52+…+9992的程序框图,并写出程序.
[思路点拨] 先分析各项特点及关系,确定用循环结构求和,再画出程序框图,最后写出程序.
直到型循环语句
[精解详析] 由题意知各项指数相同,底数相差2,可以借助于循环设计算法.
①程序框图:
[一点通] 
1.直到型循环语句中先执行一次循环体,再判断条件是否满足,以决定继续循环还是退出循环.
2.循环次数的控制往往是判断条件,在循环体内要控制条件的改变,否则会陷入死循环.
3.控制循环次数的变量要综合考虑初始化时和LOOP UNTIL后两处,若初始值为1,则循环体中累加,若初始值为循环的次数,则循环体中递减.
编写循环语句的程序,要注意以下几点:
1.循环体要正确,尤其要注意循环体中的变量是否齐全.
2.循环条件要正确,条件与初始值要对应.
3.程序语句的格式要正确,循环结束时要有WEND或LOOP UNTIL,程序结束时要有END.
课堂小结(共18张PPT)
1.2.3 循环语句
在算法程序语言中,一般通过循环语句来处理算法中的循环结构。
我们知道,在实际问题中会遇到许多有规律的重复运算,或者在程序中需要对某些语句进行重复执行,这样就需要用到循环语句进行控制。
Scilab程序语言中提供了两种循环语句:for 循环和while 循环。
一、 for循环语句
for 循环语句的一般格式:
for 循环变量=初值:步长:终值
循环体
end
这是一种“直到型”循环结构。
解:用for循环语句来实现计算
S=0;
for i=1:1:1000
S=S+i;
End
S
这个程序一共四步:
第一步是选择一个变量S表示和,并赋给初值为0.
例1:求1+2+3+…+1000=
算法思想:可以采用重复计算,而且数字1、2、3、…、1000是有规律的一列数,逐渐循环递增,每次增幅为1.
第二步开始进入for循环语句,首先设i为循环变量,分别设定其初值、步长、终值。这里初值为1,步长为1(步长是指循环变量i 每次增加的值。步长为1,可以省略不写,若为其他值,则不可省略),终值为1000。
第三步为循环表达式(循环体)。
第四步用“end”控制结束一次循环,开始一次新的循环。
对循环体的认识:
对第三步循环表达式“S=S+i”的理解:
i=1 S=S+i 是 S=S+1,并把0+1赋值给S, 第一次循环结束时S为1,此时S记录了第一个数的值,遇到“end”开始第二次循环;
i=2 S=S+i 是 S=S+2,并把1+2赋值给S, 第二次循环结束S为1+2=3,此时S记录了前两个数的和,遇到“end”开始第三次循环;
i=3 S=S+i 是 S=S+3,并把(1+2)+3赋值给S,第三次循环结束时S为1+2+3=6,此时S记录的是前三个数的和,遇到“end”开始第四次循环;
……
一直到i=1000, 此时S为1+2+3+……+1000.
结果输出:
把上述程序存到一个文件(“C:instum.sci”),点击菜单中的“Load into Scilab”就会在Scilab中执行你写的程序:
如果在程序的第三行后,去掉分号,再运行程序,可以在屏幕上显示每一步循环输出的结果。
S=0;
for i=1:1:1000
S=S+i
End
S
S=0;
for i=1:1:1000
S=S+i;
End
S
认真比较两个程序的区别!
在例1的程序中,如果我们将初值、步长、终值、循环体分别改变,情形又如何呢
1. 将初值改变,如改为“i=100:1:1000”则该程序描述的算法为求和
“100+101+102+……+1000 .
2. 终值改变的情形类似.
如改为“i=1:1:100”则该程序描述的算法为求和“1+2+3+……+100 .
3.将步长改变,如改为“i=1:2:1000,则表示求和1+3+5+……+999;
如改为“i=1:3:1000”,则表示求和1+4+7+……+1000;
4.将循环体改变,如改变为“S=S+1/i”,则表示求和
例2:画出计算 值的算法程序框图,并写出程序。
解:从题目可以看出,分母是有规律递增的,可以引入累加变量Sum和计数变量i,且sum=sum+1/i是反复进行的,可用循环结构及语句来描述算法.
S=0;
for i=2:2:200
S=S+1/i;
End
S
开始
S=S+1/i
S=0, i=2
结束
输出S
i=i+2
i>200


二、 while循环语句
While 循环语句的一般格式为:
While 表达式
循环体
End
这是一种“当型”循环结构。
说明:当程序执行时,遇到while语句,先对表达式所描述的条件进行判断,如果条件成立,则执行while和end之间的循环体,然后再判断上述条件,再次执行循环体,这个过程反复执行,直到某一次不符合条件为止,这时不再执行循环体,将跳到end语句后,执行end后面的语句;
While 表达式
循环体
End
例3:求平方值小于1000的最大整数。
解:Scilab的格式来解决这个问题
--> j=1;
--> while j*j<1000, j=j+1; end
--> j=j-1;
--> j
j=
31.
在输入完程序的第二行后,击Enter键,再在提示符下输入j,击Enter键后,输出最大的j值.
步骤:
第一步是选择一个变量j表示数值,并赋给初值1;
第二步开始进入while循环语句
循环体:j*j<1000, j=j+1;
解释:j=1时,1*1=1<1000, j=1+1=2;遇到end开始第二次循环;
j=2时,2*2=4<1000, j=2+1=3; 遇到end开始第三次循环;…
第三步单击Enter键,再在提示符输入j,击Enter键,输出最大j值
例4:用while循环语句编写一个程序,计算1×3×5×……×99.
解:程序为:
S=1;
i=1;
while i<=99
S=S*i;
i=i+2;
end
S
练习题
1、编写程序,计算函数f(x)=x2-3x+5当x=1,2, 3,…,20时的函数值。
x=1;
while x<=20
y=x^2-3*x+5;
x
y
x=x+1;
end
for x=1:1:20
y=x^2-3*x+5;
x
y
x=x+1;
end