第五章循环结构PPT课件123

上传人:y****3 文档编号:123859262 上传时间:2022-07-23 格式:PPT 页数:60 大小:917.50KB
收藏 版权申诉 举报 下载
第五章循环结构PPT课件123_第1页
第1页 / 共60页
第五章循环结构PPT课件123_第2页
第2页 / 共60页
第五章循环结构PPT课件123_第3页
第3页 / 共60页
资源描述:

《第五章循环结构PPT课件123》由会员分享,可在线阅读,更多相关《第五章循环结构PPT课件123(60页珍藏版)》请在装配图网上搜索。

1、循环结构循环结构 Do Loop之之“当当”循环循环形式1:形式2:Do While Do 语句块(循环体)语句块(循环体)Loop Loop While 当条件为真(当条件为真(true)时循环!)时循环!Do Loop循环示例循环示例1Private sub Form_click()Dim num%num=1Do while num=10Print numNum=num+1LoopEnd subPrivate sub Form_click()Dim num%num=1Do Print numNum=num+1Loop while num=10End subS=1+2+3+100Privat

2、e Sub Form_Click()Dim i As Integer i为累加数Dim sum As Integer sum为累加和 i=1 sum=0 Do While i=100 sum=sum+i i=i+1 Loop Print sumEnd SubS=1+2+3+100Private Sub Form_Click()Dim i As IntegerDim sum As Integer i=1 sum=0 Do sum=sum+i i=i+1 Loop While i=100 Print sumEnd SubDo Loop之之“直到直到”循环循环形式1:形式2:Do Until Do

3、语句块(循环体)语句块(循环体)Loop Loop Until 直到条件为真(true)时退出循环!S=1+2+3+nPrivate Sub Command1_Click()Dim i As Integer,n As Integer Dim sum As Integer n=Val(Text1.Text)sum=0 i=0 Do Until i n sum=sum+i i=i+1 Loop Text2.Text=sumEnd SubS=1+2+3+nPrivate Sub Command1_Click()Dim i As Integer,n As Integer Dim sum As long

4、 n=Val(Text1.Text)sum=0 i=0 Do sum=sum+i i=i+1 Loop Until i n Text2.Text=sumEnd Sub5.2 For 循环语句循环语句 For循环语句是计数型循环语句,用于控制循环次数已知的循环结构。语句形式如下:For 循环变量=初值 To 终值 Step 步长 循环体Next 循环变量 For 循环变量=初值 To 终值 Step 步长 循环体Next 循环变量(1)“循环变量循环变量”:必须为数值型,取值范围:必须为数值型,取值范围在初值和终值之间。在初值和终值之间。(2)“初值初值”、“终值终值”:都是数值型,可以是:都是

5、数值型,可以是数值表达式。数值表达式。(3)“步长步长”:是数值型,可以是数值表达式。:是数值型,可以是数值表达式。步长不能为步长不能为0。如果步长是。如果步长是1,则,则Step 1可以省可以省略不写。略不写。(4)“循环体循环体”:在:在For和和Next之间一条或多之间一条或多条语句,他们将被执行指定的次数条语句,他们将被执行指定的次数。(5)Next后面的循环变量与后面的循环变量与For语句中的循语句中的循环变量必须相同。环变量必须相同。使用使用For循环计算循环计算1+3+5+99的值的值 Private Sub Command1_Click()Dim i As Integer,n

6、As Integer Dim sum As Integer sum=0 For i=1 to 99 step 2 sum=sum+iNext iPrint sumEnd SubFor 循环变量=初值 To 终值 Step 步长 循环体Next 循环变量 使用使用For循环计算循环计算1+3+5+99的值的值 Private Sub Command1_Click()Dim i As Integer,n As Integer Dim sum As Integer sum=0 For i=99 to 1 step-2 sum=sum+iNext iPrint sumEnd SubFor 循环变量=初

7、值 To 终值 Step 步长 循环体Next 循环变量 For 和和Do Loop的比较的比较 采用For语句比Do Loop更加简明。一般情况下,能够预先确定循环次数时,应优先采用For语句,否则的话应该使用Do Loop语句【例例 5.13】利用随机数函数模拟抛硬币利用随机数函数模拟抛硬币 采用的方法是:每次随机产生一个0或1的整数,相当于一次投币,1代表正面,0代表反面。在窗体上有三个文本框,名称分别是Text1、Text2、Text3,分别用于显示用户输入抛硬币次数、出现正面的次数和出现反面的次数,如图所示。Private Sub Command1_Click()Dim n As L

8、ongDim n1 As Long,n2 As LongRandomizen=Val(Text1.Text)n1=0n2=0For i=1 To nr=Int(Rnd*2)If r=1 Thenn1=n1+1Elsen2=n2+1End IfNextText2.Text=n1Text3.Text=n2End Sub 循环的嵌套循环的嵌套多重循环结构多重循环结构 如果在一个循环内完整地包含另一个循环结构,则称如果在一个循环内完整地包含另一个循环结构,则称为多重循环,或循环嵌套,嵌套的层数可以根据需要而定,为多重循环,或循环嵌套,嵌套的层数可以根据需要而定,嵌套一层称为二重循环,嵌套二层称为三重循

9、环。嵌套一层称为二重循环,嵌套二层称为三重循环。下面是几种常见的二重嵌套形式:下面是几种常见的二重嵌套形式:(1)For I=.For J=.Next J .Next I(2)For I=.Do While/Until.Loop .Next I(3)Do While.For J=.Next J .Loop(4)Do While/Until.Do While/Until.Loop .Loop循环嵌套循环嵌套Private Sub Form_Click()Dim i As Integer,j As IntegerFor i=1 To 3 Print i=”;i For j=1 To 3 Print

10、 Tab;j=;j Next jNext IEnd Sub图图5.6 例例5.4显示结果显示结果循环嵌套循环嵌套For i=1 To 3 Step 1 Print i=”;i For j=1 To 3 Step 1 Print Tab;j=;j Next jNext ii=1i=3i=i+1Print i=”;iFor j=1 To 3 Print Tab;j=;j Next jNY循环嵌套循环嵌套i=1i=3i=i+1Print“i=“;ij=j+1j=1j=3Print Tab;j=;jYNYNFor i=1 To 3 Step 1 Print i=”;i For j=1 To 3 Ste

11、p 1 Print Tab;j=;j Next jNext i循环嵌套循环嵌套For i=1 To 3 Step 1 Print i=”;i For j=1 To 3 Step 1 Print Tab;j=;j Next jNext ii=1i=3i=i+1Print i=”;iFor j=1 To 3 Print Tab;j=;j Next jNY循环嵌套循环嵌套i=1i=3i=i+1Print“i=“;ij=j+1j=1j=3Print Tab;j=;jYNYNFor i=1 To 3 Step 1 Print i=”;i For j=1 To 3 Step 1 Print Tab;j=;

12、j Next jNext i循环嵌套循环嵌套For i=1 To 3 Print i=”;i For j=1 To 3 Print Tab;j=;j Next jNext ii=1i=3i=i+1j=j+1j=1j 100 Then Exit DoLoopPrint sumEnd SubExit For语句语句 Exit For语句可以用来结束For.Next循环。一般也和选择结构语句一起配合使用。它必须放置在For.Next语句的循环体中。当执行到Exit For时,程序会立即结束循环,跳到Next后执行下面的语句。当有多个循环嵌套使用时,Exit For语句只跳出所在的最内层的For.Ne

13、xt循环。【例例 5.7】给定一个数给定一个数n,判断它是否是,判断它是否是素数素数 分析:素数就是一个大于2且只能被1和本身整除的整数。判断一个数是否为素数比较简单的方法是:用n逐个除以2n-1之间的每个整数只要有一个可以整除,则说明n不是素数;如果全部不能整除,则说明n是素数。Private Sub Form_Click()Dim i As Integer Dim n As Integer n=InputBox(请输入一个整数)For i=2 To n-1 If n Mod i=0 Then Exit For End If Next I If i n Then Print n&不是素数 E

14、lse Print n&是素数 End IfEnd Subn比较循环结束后循环变量比较循环结束后循环变量i的值来判断是正的值来判断是正常结束还是强行跳出,从而确定被验证的常结束还是强行跳出,从而确定被验证的数数n是否为素数。是否为素数。对于循环的嵌套,要注意以下事项:对于循环的嵌套,要注意以下事项:(1)内循环变量与外循环变量不能同名;内循环变量与外循环变量不能同名;(2)外循环必须完全包含内循环,不能交叉;外循环必须完全包含内循环,不能交叉;(3)不能从循环体外转向循环体内,也不能从外循环转向内循环不能从循环体外转向循环体内,也不能从外循环转向内循环.正正 确确错错 误误 For ii=1

15、To 10 For jj=1 To 20 Next ii Next jj For ii=1 To 10 For ii=1 To 20 Next ii Next ii For ii=1 To 10 For jj=1 To 20 Next jj Next ii For ii=1 To 10 Next ii For ii=1 To 10 Next ii 常见题型常见题型 数值计算 1!+2!+.+n!1-1/3+1/5-1/7+1/9+x-x3/3!+x5/5!-x7/7!+x9/9!-数值计算数值计算伪代码描述:累加项(term)赋初值,累加和(sum)赋初值while()sum=sum+term

16、;求出下一轮的term;1!+2!+3!+n!单循环实现 累加项(term)赋初值,累加和(sum)赋初值 while()sum=sum+term;求出下一轮的term;双循环实现求自然对数求自然对数e的近似值,要求其误差小于的近似值,要求其误差小于!1!31!21!111nePrivate Sub Form_Click()Dim i%,n&,t!,e!e=0 存放累加和结果存放累加和结果i=0 计数器计数器n=1 存放阶乘的值存放阶乘的值t=1 级数第级数第i项值项值 e=e+t i=i+1 n=n*i 连乘连乘,求阶乘求阶乘 t=1/n 累加项累加项LoopPrint 计算了计算了;i;项

17、的和是项的和是;eEnd SubnFibonacci数列 1,1,2,3,5,8,13,21,34,55 12121(1)2(2)(3)nnnfnfnfffn求斐波那契数列前十五项求斐波那契数列前十五项Private Sub Form_Click()Dim f1%,f2%,f3%,i%f1=1f2=1print f1;f2For i=3 To 15 f3=f1+f2 print f3 f1=f2 f2=f3NextEnd Sub求最大公约数【例 5.12】用辗转相除法求两自然数x、y的最大公约数。算法描述如下:x除以y得余数r;若r=0,则y为求得的最大公约数,算法结束,否则执行步骤(3);令

18、x等于y,y等于r,重复执行步骤(1)。Private Sub Form_Click()x=InputBox(输入x)y=InputBox(输入y)Do r=x Mod y If r=0 Then Exit Do x=y y=rLoopPrint 最大公约数为:;yEnd Sub作业作业 2 求求100100以内的所有素数。以内的所有素数。求斐波那契数列第多少项大于求斐波那契数列第多少项大于500500,并打印,并打印出该项的值。出该项的值。Do WhileLoopDo WhileLoop和和DoLoop UntilDoLoop Until改写辗转相除法求最大公约数(选做)改写辗转相除法求最大公约数(选做)作业作业 1 鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何钱一;百钱买百鸡,翁、母、雏各几何?-算经算经张丘建张丘建 求求100100以内的所有素数。以内的所有素数。打印讲到的各种星号组合。打印讲到的各种星号组合。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!