3.2枚举算法及程序实现(1)

3.2枚举算法及程序实现(1)

ID:41327532

大小:856.50 KB

页数:25页

时间:2019-08-22

3.2枚举算法及程序实现(1)_第1页
3.2枚举算法及程序实现(1)_第2页
3.2枚举算法及程序实现(1)_第3页
3.2枚举算法及程序实现(1)_第4页
3.2枚举算法及程序实现(1)_第5页
资源描述:

《3.2枚举算法及程序实现(1)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.枚举算法的基本思想枚举,就是将问题的可能解一个个地列举,逐一判断,即使中途找到符合的解也要继续找下去,将所有可能都找完才结束。枚举算法又叫穷举算法,其基本思想是把问题所有的解一一地罗列出来,并对每一个可能解进行判断,以确定这个可能解是否是问题的真正解。若是,就采纳这个解,否则就抛弃它。3.2枚举算法及程序实现(1)2.枚举算法的实现要点①列举与检验过程既不重复也不遗漏;②尽可能地使可能解的罗列范围最小,以提高解决问题的效率;③用循环语句(For语句)在一定范围内列举所有可能的解;④用选择语句(If语句)判断和选择真正的解。3.枚举算法的一般格式Fo

2、r循环变量=初始To终值Step步长If检验表达式Then输出解或者计数器加1EndIfNext循环变量本节的学习需掌握枚举算法的基本思想,掌握枚举算法的程序实现方法。考查方式为选择题与填空题。1.如果一个自然数恰好等于它的因子之和,这个数就称为“完全数”。例如,6就是一个“完全数”,因为6的因子为1、2、3,而6=1+2+3。设计一个算法找出1000以内所有的“完全数”,那么求解这个问题主要用到的算法是()A.递归算法B.排序算法C.解析算法D.枚举算法D2.下列问题适合使用枚举算法解决的是()A.计算本月需上交的电费B.计算全班男同学的平均身高C.

3、查找100以内所有能被2和3整除的数D.200米短跑比赛成绩排名C3.用50元钱兑换面值为1元、2元、5元的纸币共25张。每种纸币不少于1张,问有多少种兑换方案。求解这个问题,最适合的算法是()A.排序算法B.递归算法C.枚举算法D.解析算法C4.用枚举算法求解“找出所有满足各位数字之和等于7的三位数”时,在下列所列举的数值范围内,算法执行效率最高的是()A.从0到999B.从100到999C.从100到700D.从106到700D5.以下VB表达式中,能实现判断某数能同时被3和5整除的是()A.xMod3AndxMod5=0B.xMod3=0Andx

4、Mod5=0C.xMod3<>0OrxMod5=0D.xMod3=0AndxMod5<>0D在我国古代《孙子算经》中曾提出这样一个问题。原文是这样的:“今有物,不知其数,三三数之,剩二;五五数之三,剩三;七七数之;剩二;问物几何?”试用枚举法来分析此题,得出如下的算法:①设定寻找之数最大范围max②设定数n的初始值为7③判断条件n<=max?,如果是,执行④,如果否,跳转到⑧④判断条件nMod3=2AndnMod5=3AndnMod7=2是否成立⑤如果条件④成立,则输出n⑥n=n+1⑦跳转3⑧结束根据此算法画出流程图如下图所示:请将流程图中空缺部分补上

5、:(1)边框①处应填入______________________________________________。(2)边框②处应填入_____________________。nMod3=2AndnMod5=3AndnMod7=2?n=n+1(s10)Mod10=6?使用枚举算法找出200以内所有十位数字为6的所有正整数,并统计正确解的个数。下图为解决该问题的流程图:请将流程图中空缺的部分补充完整:(1)边框①处应填入_________________________。(2)边框②处应填入_________________________。s=s

6、-18.陈丽的支付宝支付密码忘记了,她急需在30分钟内完成货款的支付,请用VB编程帮她找回密码。她零星记得自己的支付密码信息:①密码是6位数字,前面两位为85;②最后两位数字相同;③能被13和33整除。程序界面如图所示,单击“帮助找回密码”按钮Command1后,可能的密码显示在列表框List1中。解决此问题的VB程序如下:PrivateSubCommand1_Click()DimaAsInteger,sAsLong,bAsInteger,iAsIntegerFori=0To9999__________________'①s=850000+IIfsMo

7、d33=0Thena=sMod10_____________________'②Ifa=bThenList1.AddItemStr(s)EndIfEndIfNextiEndSub(1)解决此问题的算法是_________________。在程序注释①和注释②的前面,填入适当的语句或表达式,把程序补充完整:(2)程序中注释①前画线处应填入________________________________。(3)程序中注释②前画线处应填入________________________________。注:该示例程序在素材文件夹下vb13文件夹中。枚举算法S

8、tep13b=(sMod100)10小李设计一个求两数最大公约数的程序。程序运行如下图所示。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。