收藏 分销(赏)

高中数学 123 循环语句课件 新人教B版必修3 课件.ppt

上传人:pc****0 文档编号:13284073 上传时间:2026-02-20 格式:PPT 页数:29 大小:335KB 下载积分:10 金币
下载 相关 举报
高中数学 123 循环语句课件 新人教B版必修3 课件.ppt_第1页
第1页 / 共29页
高中数学 123 循环语句课件 新人教B版必修3 课件.ppt_第2页
第2页 / 共29页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,1.2.3,循环语句,问题提出,1.,两种条件语句的一般格式分别是什么?,格式,2:,if,条件,语句系列,1,;,else,语句系列,2,;,end,格式,1:,if,条件,语句系列,1,;,end,在算法程序语言中,一般通过循环语句来处理算法中的循环结构。,我们知道,在实际问题中会遇到许多有规律的重复运算,或者在程序中需要对某些语句进行重复执行,这样就需要用到循环语句进行控制。,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,i200,否,是,二、,while,循环语句,While,循环语句的一般格式为:,While,表达式,循环体,End,这是一种“,当型,”循环结构。,说明:当程序执行时,遇到,while,语句,先对表达式所描述的,条件进行判断,,如果条件成立,则执行,while,和,end,之间的循环体,然后再判断上述条件,再次执行循环体,这个过程反复执行,直到某一次不符合条件为止,这时不再执行循环体,将跳到,end,语句后,执行,end,后面的语句;,While,表达式,循环体,End,例,3.,求平方值小于,1000,的最大整数。,解答:,Scilab,的格式来解决这个问题,-j=1;,-while j*j j=j,-,1;,-j,j=,31.,在输入完程序的第二行后,击,Enter,键,再在提示符下输入,j,,击,Enter,键后,输出最大的,j,值,.,步骤:,第一步是选择一个变量,j,表示数值,并赋给初值,1,;,第二步开始进入,while,循环语句,循环体:,j*j1000,j=j+1;,解释:,j=1,时,,1*1=11000,j=1+1=2,;遇到,end,开始第二次循环;,j=2,时,,2*2=41000,j=2+1=3;,遇到,end,开始第三次循环;,第三步单击,Enter,键,再在提示符输入,j,,击,Enter,键,输出最大,j,值,例,4.,用,while,循环语句编写一个程序,计算,135,99.,解:程序为:,S=1,;,i=1,;,while i=99,S=S*i,;,i=i+2,;,end,S,例,5.,一球从,100m,高度落下,每次落地后反跳为原高度的一半,再落下。在第,10,次落地时,共经过多少路程?第,10,次下落多高?,解:算法分析:,第,1,次下落高度,h,1,=100;,第,2,次下落高度,h,2,=50;,第,10,次下落高度,h,10,=h,9,/2.,递推公式:,h,1,=100,h,n,+1,=h,n,/2,,,n,=1,,,2,,,,,9.,到第,10,次落地时,共经过了,h,1,+2h,2,+2h,3,+2h,10,(m).,S=0;,h=100;,S=S+h;,for i=2;10,h=h/2;S=S+2*h;end,S,h,例,6.,计算 的值。,要求用两种循环语句分别写出程序。,在本问题里初值可设定为 ,,第一次循环得到 ,第二次循环得到 ,一共循环了,4,次。,解:用循环结构实现算法需搞清,初值,是谁,.,用,for,语句书写程序:,x,=1/6,;,for i=1,:,1,:,4,x,=1/(6+,x,),;,end,Print(%io(2),,,x,),用,while,语句书写程序,:,x,=1/6,;,i=1,;,while,i,10000,的最小整数的算法,解:本例中循环的次数不定,因此可用“,While,循环”语句,具体描述如下:,S=1;,i=1;,While S10000,i=i+2;,S=S*I;,End,Print(%io(2),i),练习题,1,、编写程序,计算函数,f(x)=x,2,3x+5,当,x=1,2,3,,,20,时的函数值。,x,=1,;,while,x,=20,y,=,x,2,3*,x,+5,;,x,=,x,+1,;,end,for,x,=1,:,1,:,20,y,=,x,2,3*,x,+5,;,x,=,x,+1,;,end,m,=1;,i,=1;,n,=input(“,n,=”);,While,i,=,n,m,=,m,*,i,;,i,=,i,+1;,end,print(%io(2),m,),2.,编写一个程序,输入正整数,n,,计算它的,阶乘,n,!(,n,!=,n,*(n,1)*,*3*2*1),。,m,=1;,n,=input(“,n,=”);,for,i,=1:1:,n,m,=,m,*,i,;,i,=,i,+1;,end,print(%io(2),m,),3,、根据下面的程序,画出其算法的程序框图,.,i,=,1;,while,i,=1,y,=,i,*,i,*,i,;,i,=,i,+0.2;,y,end,开始,y,=,i,*,i,*,i,i,=,1,结束,输出,y,i,=,i,+0.2,i=1,否,是,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服