循环结构(又称为重复结构)

上传人:自*** 文档编号:48511988 上传时间:2018-07-16 格式:PPT 页数:177 大小:811.10KB
返回 下载 相关 举报
循环结构(又称为重复结构)_第1页
第1页 / 共177页
循环结构(又称为重复结构)_第2页
第2页 / 共177页
循环结构(又称为重复结构)_第3页
第3页 / 共177页
循环结构(又称为重复结构)_第4页
第4页 / 共177页
循环结构(又称为重复结构)_第5页
第5页 / 共177页
点击查看更多>>
资源描述

《循环结构(又称为重复结构)》由会员分享,可在线阅读,更多相关《循环结构(又称为重复结构)(177页珍藏版)》请在金锄头文库上搜索。

1、循环结构(又称为重复结构)在这种结构中,按给定的条件连续 重复多次执行A框中的一组算法步骤 。A框称为循环体。一般来说,循环 结构有二种:当循环和直到循环。 当循环结构的特点:当条件成立时 ,重复执行循环体;当条件不成立 时,不执行循环体并立即退出循环 。直到循环的特点是:重复执行循 环体,直到条件成立时退出循环。条件A框是否当循环 A框条件否是直到循环 当循环结构中,循环体可能一次都没执行; 而直到循环的循环体至少被执行一次。计算12个实验数据的平均值 开始输入实验数据at=t+a n=n+1输出 t/12 的值结束计数器变量n赋初值0实验数据总和变量t赋初值0N=12否是一、用For-Ne

2、xt语句实现循环结 构 预先能确定重复次数的循环问题可以使用 For-Next来实现.FOR -NEXT语句的一般格式是:For = To Step NextFOR -NEXT语句的执行过程是:1.对循环变量设置初值。 2.判断循环变量的值是否大于终值,若大于, 则退出循环,否则,执行循环体。 3.执行循环体后,循环变量的值增加一个步长 的值,再执行上述步骤 2。 计算1+2+3+10的值t = 0 For i = 1 To 10 t = t + i Next i Print “t=“; t计算1+3+5+7+9的值t = 0 For i = 1 To 10 Step 2t = t + i N

3、ext i Print t计算2+4+6+8+10的值t = 0 For i = 2 To 10 Step 2 t = t + i Next i Print t计算1+3+5+7+前20项的值t = 0 For i = 1 To 40 Step 2 t = t + i Next i Print t计算10+9+8+1的值s = 0 For i = 10 To 1 Step -1 s = s + i Next i Print s计算1+1/2+1/3+1/10的值s = 0 For i = 1 To 10 s = s + 1 / i Next i Print s计算1/2+1/22+1/231/

4、2100的值s = 0 For i = 1 To 100s = s + 1 / 2 i Next i Print s方法一:s = 0 M = 1 For I = 1 To 100 s = s + M Next Is = 0 M = 1 For I = 1 To 100M = M / 2s = s + M Next I方法二:计算12个输入数据的平均值开始输入实验数据at=t+a n=n+1输出 t/12 的值结束计数器变量n赋初值0实验数据总和变量t赋初值0N=12否是s = 0For i = 1 To 12input as = s + aNext iPrint s / 12画圆形Circl

5、e (500, 800), 100, RGB(255, 0, 0)题目:画10个同心圆For i = 100 To 1000 Step 100 Circle (1800, 1500), i, RGB(255, 0, 0) Next i计算s=1*2*3*4*1010!s = 1For i = 1 To 10 s = s * iNext iPrint s输入数字n,计算n!Input n s = 1 For i = 1 To n s = s * i Next i print s计算s=1-2+3-4+5-6+7-8+9-10s = 0 t = 1 For i = 1 To 10 s = s +

6、t * i Next i Print ss = 0 t = 1 For i = 1 To 10 s = s + t * i t = -t Next i Print s求1-1/21+1/31-1/41+.+1/91-1/101s = _ t = 1 For i = 21 To 101 Step 10 _ t = -t s = s + t * a Next i Print ss = 1 t = 1 For i = 21 To 101 Step 10 a = 1 / i t = -t s = s + t * a Next i Print s填数3_*8256=_3*6528For i = 1 To

7、 9 If (30 + i) * 8256 = (i * 10 + 3) * 6528 ThenPrint i End If Next i统计200以内37的倍数有几个?并把 符合要求的数字输出。c = 0 For i = 1 To 200If i Mod 37 = 0 Thenc = c + 1Print iEnd If Next i Print c若一个三位数x=100a+10b+c(a,b,c都 是个为数),满足a3+b3+c3=x,则 x称为水仙花数,找出所有的水仙花 数。For n = 100 To 999 a = Int(n / 100) b = Int(n - 100 * a)

8、/ 10) c = n Mod 10 If a 3 + b 3 + c 3 = n Then Print n Next n有一个五位数字组成的编号1_ _47, 千位和百位不知,但是这个五位数是 57或67的倍数,输出所有满足这些条 件的五位数,并统计这样数的个数。分析10047=10047+0=10047+0*100 10147=10047+100=10047+1*100 10247=10047+200=10047+2*100 10347=10047+300=10047+3*100 . 10947=10047+900=10047+9*100 11047=10047+1000=10047+10

9、*100 11147=10047+1100=10047+11*100 . 11947=10047+1900=10047+19*100 12047=10047+2000=10047+20*100 . 19947=10047+9900=10047+99*100c = 0 For j = 0 To 99n = 10047 + j * 100If n Mod 57 = 0 Or n Mod 67 = 0 Thenc = c + 1Print nEnd IfNext jPrint c用10元和50元两种纸币组成240元, 共有哪几种组合方式?分析 x代表10元的张数 当50元0张:x=(240-0*50

10、)/10 当50元1张:x=(240-1*50)/10 当50元2张:x=(240-2*50)/10 当50元3张:x=(240-3*50)/10 当50元4张:x=(240-4*50)/10For i = 0 To 4x = (240 - 50 * i) / 10 Print “五十元张数“; i, “十元张数“; x Next ix代表50元的张数 当10元0张:x=(240-0*10)/50 当10元1张:x=(240-1*10)/50 当10元2张:x=(240-2*10)/50 。 当10元24张:x=(240-24*10)/50For i = 0 To 24x = (240 - 1

11、0 * i) / 50 If x = Int(x) ThenPrint “五十元张数“; x, “十元张数“; i End IfNext i当一个直角三角形,一条直角边 的长度为8,切斜边不超过100时 ,所有满足条件的直角三角形有 哪几种组合?For i = 9 To 100x = Sqr(i * i - 8 * 8)If x = Int(x) Then Print i, x,8 Next i包装600个变形金刚,要求是: 1,包装的规格分别是:小盒每盒 12个,大盒每盒15个。 2,每种规格的盒数都不能为0。 请设计一个算法,输出所有可能的 包装方案。方法一: For i = 1 To 4

12、9 x = (600 - 12 * i) / 15 If x = Int(x) Then Print “小盒个数“; i, “大盒个数“; x End If Next iFor i = 1 To 39 x = (600 - 15 * i) / 12 If x = Int(x) Then Print “小盒个数“; X, “大盒个数“; i End If Next i当型(while) 循环: Do While 语句组 Exit Do 语句组Loop当型(while)循环的执行过程是:先判断是否成 立,若不成立则退出循环,执行Do while的下一个语句 ;若成立,则执行Do-Loop之间的语句

13、(称为循环体) ,执行完循环体,再去判断,当条件成立时继续 执行循环体。直到型(Until) 循环: Do语句组Exit Do 语句组 Loop Until 直到型(until)循环的执行过程是:先执行 Do-loop之间的语句(称为循环体);执行 完循环体,再去判断,当条件成立 时退出循环,否则继续执行循环体,直到 条件成立,退出循环。t = 0 i=1 Do while i= 1 s = s + i i=i-1 loop Print sS=0 n=1 Do while n0 t=x mod 10 s=s+t x=int(x/10) loop print s输入一个不大于10位的二进制数n

14、,将其转换成对应的十进制数提示: (10101)2=1*20+0*21+1*22 +0*23+1*24)input xi = 0 s = 0 Do While x 0t = x Mod 10s = s + t * 2 ix = Int(x / 10)i = i + 1 Loop Print s从1+2+3+4+,加到什么 数时和大于10000。打印出这 个加数及这时的和。直到型(Until) 循环: Do语句组Exit Do 语句组 Loop Until s = 0 n = 0 Don = n + 1s = s + n Loop Until s 10000 Print n, ss = 0 n

15、= 0 Do While s 0 t=x mod 10 s=s+t x=int(x/10) loop print sK=22 S=0 Do S=s+k K=k+2 Loop until k=29 Print s计算5个输入数据的平均值 1.do while loop 2.do loop untils = 0 i = 1 Do While i 5 Print s / 5求十个数中最大值 打擂台法_ max=x i=1 do while _if xmax then _i=i+1_ print _开始结束Max=x, i=1输入xTFimaxMax=xi=1+1输出xTFInput x max=x

16、i=1 do while imax then max=xi=i+1loop print max方法二: max=0(或一个很小的数) i=1 do while imax then max=xi=i+1loop print max求十个数中最小值Input x min=x i=1 do while i-1 s=s+x input x loop print s对输入的数据求和,当所求的和 超过100,则停止输入,并输出求 和结果。S=0 do while s100 print s开始输出 S的值结束输入NS=0 T=1 A=1A= 1 - 0.00001 Print is = 0 t = 1 i = 0 Do While s nn=n-m

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号