ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:132.12KB ,
资源ID:28086044      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28086044.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(算法实例.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

算法实例.docx

1、算法实例解析法:数列问题* 用循环结构实现y=xn(n=0)(x为整数),写出流程图。N=inputbox(“”)X=inputbox(“”)Y=1If n=0 thenI=1Do while i=n Y=y*x I=i+1LoopPrint yelseprint “error”endif*s=1+3+5+7+n,(1) 求前20项的和(2)求当累加到第几项时,s的值刚好超过100?(3) 求第30项的值(4)求累加到第几项时,s的值刚好不超过300?(1) I=1 S=0 Do while i=20 S=s+(2*i-1) I=i+1 Loop Print s(2)I=1 S=0 Do wh

2、ile s=100 S=s+(2*i-1) I=i+1 Loop Print i-1(3)I=1 S=0 Do while i=300 Print i-1*求 1!+2!+3!+4!+20!方法1:S=1For i=2 to 20 T=1 for j=2 to it=t*j next j s=s+tnext iprint s方法2:N=inputbox(“”)S=0T=1A=1Do while a=n T=t*a S=s+t A=a+1LoopPrint s*求斐波纳奇数列的第n项N=inputbox(“”)If n3 then Print 1Else A=1:b=1:c=2:k=3 If n

3、=3 thenPrint 2elseDo while k=nA=bB=cC=a+bK=k+1 Loop Print c endifendif*计算圆周率N=inputbox(“”)I=1:s=1:x=2:y=1Do while i=n S=s*(x/y) I=i+1 If I mod 20 then X=x+2Else Y=y+2EndifLoopPrint s*2*求a,b(ab)两数的最大公约数和最小公倍数A=inputbox(“”)B=inputbox(“”)X=aY=bDo R=a mod b A=b B=rLoop until b=0Print “最大公约数是”;aS=(x/a)*(

4、y/a)*aPrint “最小公倍数是”;s枚举算法*孙子算经鸡兔同笼问题:有35个头,94只脚,问鸡兔各有几只?X+y=352x+4y=94X=1Do while x=35 If 2*x+(35-x)*4=94 then Print x,35-x EndifX=x+1Loop*涂抹单据1:一张单据上有一个5位数的编号,万位数是1,十位数是4,个位数是7,千位数和百位数已经模糊不清,只知道该5位数是57或67的倍数,找出所有满足这些条件的5位数并输出。1*47For j = 0 To 99 n = 10047 + j * 1000 If n Mod 57 = 0 Or n Mod 67 = 0

5、 Then Print n End IfNext j*涂抹单据2:一张单据上有一个5位数的编号,万位数是1,百位数是4,个位数是7,千位数和十位数已经模糊不清,只知道该5位数是57或67的倍数,找出所有满足这些条件的5位数并输出。1*4*7 (双重循环)For i= 0 To 9 For j=0 to 9n = 10407 +i * 1000+j*10 If n Mod 57 = 0 Or n Mod 67 = 0 Then Print n End If Next jNext i*现要为班级同学购买奖品,有一张面值100元的文具购物券,需购买笔记本(10元/本)和文具盒(15元/套)。该购物券

6、必须一次性全部用完(不找零不贴钱)。请列出所有可能的购买方案。(可以全都购买笔记本或文具盒) for x=1 to 10 y=int(100-10*x)/15 print x,y next x*百鸡百钱问题:已知公鸡每只3元,母鸡每只5元,每3只小鸡1元。用100元钱买100只鸡,问每种鸡应各买多少?Dim a As Integer, b As Integer ,c As Integera=0b=0c=0For a=0 to 33For b=0 to 20For c=0 to 100 if a+b+c=100 and a*3+b*5+1/3*c=100 thenPrint a;b;cend i

7、fNext cNext bNext a*求1000以内的素数For i = 2 To 1000 f = 0 j = 2 For j = 2 To i - 1 If i Mod j = 0 Then f = 1 End If j = j + 1 Next j If f = 0 Then Print i End IfNext i*判断一个输入的数是否为素数(此题不是枚举)a=inputbox(“”)if a=1 then print “no”else f=0for i=2 to a-1 if a mod i=0 then f=1 endifnext iif f=0 then print “yes”

8、else print “no”endifendif *包装600个变形金刚,要求:1)包装的规格分别是:小盒每盒12个,大盒每盒15个;2)每种规格的盒数都不能为0For x=1 to 50 For y=1 to 50 If 12*x+15*y=600 then I=x J=y Print I,j endif Next yNext x排序算法*输入10个数,将这10个数从小到大排序(冒泡排序)Dim d(1 to 10) as single , i As Integer, j As Integer, k As Integeri = 1Do While i = 10 d(i) = InputBo

9、x() i = i + 1Loopi = 1n=10Do While i i If d(j) d(j - 1) Then k = d(j): d(j) = d(j - 1): d(j - 1) = k End If j = j - 1Loopi = i + 1Loopi = 1Do While i = 10 Print d(i) i = i + 1Loop查找算法*顺序查找10个数中key等于48的位置,如找到,输出数组下标18,25,12,34,13,14,48,49,56,67Dim d(1 To 10) As Single, i As Integer, j As Integer, key

10、 As Single, m As Integer, r As Integeri = 1Do While i = 10 d(i) = InputBox() i = i + 1Loopi = 1r=0key=inputbox(“请输入key”)Do While i =10 and r=0 If key=d(i) then r=i endif i=i+1Loopif r0 then print r,d(r)else print ”did not find”endif*对分查找10个数中key等于48的位置,如找到,输出数组下标12,13,14,18,25,34,48,49,56,67Dim d(1

11、To 10) As Single, i As Integer, j As Integer, key As Single, m As Integer, r As Integeri = 1Do While i = 10 d(i) = InputBox() i = i + 1Loopi = 1j=10r=0key=inputbox(“请输入key”)Do While i = j and r=0 m=int(i+j)/2) If key=d(m) then r=m endif If key d(m) Then j=m-1 else i=m+1 endifLoopif r0 then print r,d(r)else print ”did not find”endif递推算法(考试不需要)*一个球从100米高度自由下落,落地后反弹回到原高度的一半处,再落下,又反弹回到第2次下落时高度的一半,以后每次都反弹到上次下落的高度一半处。求该球在第10次落地时,共经过了多少米?第10次反弹到多高?S=100X=100I=1Do while i=0.01 X=x*(1-0.2) I=i+1LoopPrint i-1

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1