版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
枚举算法1.例1:一天小明回家看见妈妈好像有什么心事,于是小明关心地询问妈妈,怎么回事?妈妈告诉小明,她不小心将单位的记录账目的单据碰到了污迹,现在很难认出,这个数字是:113702?,怎么办?小明想了一想后,问妈妈这数有什么特点?妈妈说:“这数是144的整数倍”,马上,小明就帮助妈妈解决了这个问题。
第一步:列出所有可能的解
11370201137021113702211370231137029第二步:根据条件,检验出真正的解
一一列举这些解的同时,检验每一个可能解是否满足条件:是144的整数倍,如果是,则是我们要找的真正解,否则就不是。枚举法:象这种列举出问题的所有可能解,并在逐一列举的过程中,检验每个可能解是否是问题的真正解,若是,我们采纳这个解,否则抛弃它,这种解决问题的方法叫做枚举法。
注意:在列举的过程中不能遗漏,也不应重复。枚举算法找到的真正解不一定是唯一的。2.第一步:列出所有可能的解X=输出X开始i=0i<=9Ti=i+1结束F1137020+i返回第一步:列出所有可能的解
113702011370211137022113702311370293.第二步:根据条件,检验出真正的解
开始i=0i<=9X=1137020+ii=i+1结束TFTFXmod144=0或者int(x/144)=x/144输出X开始i=0i<=9X=1137020+iXmod144=0输出XTi=i+1F结束TF4.请同学们把程序填写完整5.问题的诊断PrivateSubCommand1_Click()Dimi,xAsLongList1.Cleari=0DoWhilei<=9x=1137020+iIfxMod144=0ThenList1.AddItem(Str(x))‘输出X的意思elsenothingLoopEndSub开始i=0i<=9X=1137020+iXmod144=0输出XTi=i+1F结束TFEndifi=i+16.编程中存在的问题——分支语句实现分支结构的语句if应该与endif成对出现,单分支语句中不存在else语句。二是在书写的时候,要注意执行语句的缩进,这样使程序看起来十分清晰,以方便我们的调试。
If条件then
语句组1
else
语句组2
endif7.编程中存在的问题——循环语句当循环语句中遗漏了loop(表示循环)的语句,以及在计数法控制循环中缺少了循环变量增量的语句,而造成了死循环。Dowhile条件循环体
循环变量=循环变量+步长loop8.例2:如果模糊数字是249??16,它是144的整数倍。第一步:列出所有可能的解249001624901162490216、、、24910162491116、、、24920162492116、、、2499916开始第二步:根据条件,检验出真正的解i=_____i<=X=i=i+1结束TF992490016+i*100Xmod144=0输出XTF09.提高题(模糊数据二):模糊数字是465?7?6,它是144的整数倍。第一步:列出所有可能的解千位数为0,十位数从0——9一一枚举:
4650706465071646507264650736、、、4650796千位数为1,十位数从0——9一一枚举:
4651706465171646517264651736、、、4651796千位数为9,十位数从0——9一一枚举:
、、、、、、4659706465971646597264659736、、、4659796开始i=<=9i=i+1结束TF注意:在列举出所有解的过程中,既不能遗漏也不应重复。十位数从0—9一一枚举0i10.提高题(模糊数据二):模糊数字是465?7?6,它是144的整数倍。第一步:列出所有可能的解千位数为0,十位数从0——9过一遍:
4650706465071646507264650736、、、4650796千位数为1,十位数从0——9过一遍:
4651706465171646517264651736、、、4651796千位数为9,十位数从0——9过一遍:
、、、、、、4659706465971646597264659736、、、4659796开始i=0<=9j<=9j=0X=j=j+1i=i+1结束TFTF4650706+1000*i+10*j注意:在列举出所有解的过程中,既不能遗漏也不应重复。 i11.提高题(模糊数据二):模糊数字是465?7?6,它是144的整数倍。第二步:根据条件,找出真正的解开始i=0i<=9j<=9j=0X=j=j+1i=i+1结束TFTF4650706+1000*i+10*jXmod144=0输出XTF千位数为0,十位数从0——9过一遍:
4650706465071646507264650736、、、4650796千位数为1,十位数从0——9过一遍:
4651706465171646517264651736、、、4651796千位数为9,十位数从0——9过一遍:
、、、、、、4659706465971646597264659736、、、465979612.注意在双重循环中,外循环每变化一次,内循环变量要取遍所有可能的值。13.请同学们列举生活中可以使用枚举算法来解决的问题14.课堂小结1、什么是枚举法:
列举出问题的所有可能解,并在逐一列举的过程中,检验每个可能解是否是问题的真正解,若是,我们采纳这个解,否则抛弃它。2、枚举法的特点:在列举的过程中,真正解不一定唯一既不能遗漏也不应重复,3、注意:并不是所有的问题都可以使用枚举算法来寻找答案的,仅当问题的所有可能解的个数不太多时,才有可能使用枚举
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CSTEA 00010-2020九龙大白茶 白茶
- T/ZFIDA 0002-2024面向网络攻击的银行安全能力评估指南
- T/HEESA 0002-2025电力信息系统网络安全等级保护测评报告评审指南
- T/CIECCPA 020-2024二氧化碳捕集、运输与封存工艺技术规范
- T/CAPS 024-2025无人机电池性能检测设备技术要求
- T/CSBM 0050.3-2024创面修复材料有效性评价 第3部分:刺激因子屏蔽评价方法
- 2025~2026学年辽宁大连市沙河口区北师大版五年级上册数学阶段学情自测卷【附答案】
- 2025~2026学年广东省广州市从化区人教版六年级上册自主练习二数学试卷【附答案】
- 2025-2026学年湖南省张家界市初中历史八年级期末下册评估压轴试题(详细参考解析)
- PHP+HTML高频面试题及详细答案(真实职场版)
- 2026年继续教育公需课考试试题及答案
- 2026年浙江省嘉兴市国家职业技能鉴定考评员试卷含参考答案
- 2026-2030中国羧甲基纤维素市场供需调查及竞争格局研究报告
- 骆驼基因组解析:探索其癌症相关基因的奥秘与启示
- 2026-2030中国咖啡生豆行业竞争格局及消费趋势预测报告
- 2026年江西中考物理试题【含答案解析】
- 2026年河北工人技师考评(环境噪声监测工)自测试题及答案
- DB32-T 5388-2026 电动车充电基础设施建设技术规程 第2部分:电动汽车
- (高清版)JTG 2112-2021 城镇化地区公路工程技术标准
- 飞飞自动打怪脚本
- 盐湖资源开发环境影响评价
评论
0/150
提交评论