用枚举法设计算法

用枚举法设计算法

ID:42981158

大小:293.31 KB

页数:8页

时间:2019-09-27

用枚举法设计算法_第1页
用枚举法设计算法_第2页
用枚举法设计算法_第3页
用枚举法设计算法_第4页
用枚举法设计算法_第5页
资源描述:

《用枚举法设计算法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章用枚举法设计算法•一、学习目的:1、通过一个具体实例,理解什么是穷举法2、如何利用穷举法解决问题3、了解计数器的用法就是按照问题的本身的性质,通过多重循环,一一列出问题所有可能的解,然后检验每个可能的解是否是问题的真正解,若是,采纳(输出)这个解,否则放弃它。这种解决问题的算法•枚举法(也叫穷举算法):当且仅当问题可能的解不太多时,才能用穷举法1.问题一张标签上有一个5位数的编号,其千位数和百位数处已经变得模糊不清,如右图。但知道这个5位数是57或67的倍数。现在要设计一个算法,输出所有满足这些条件的5位数,并统计这样的数的个数。一个实例复原一份数字被涂抹的单据的

2、算法•NO:1??47其真正解n:能被57或67整除,若n是真正解,则输出n,并在计数器c中计数。能填入的数:00,01,02,…98,99产生可能的解:10047,10147……19947枚举法(100个)用穷举法解决问题:c:计数器,用于记录算法执行过程中已经找到的真正解的个数。表达式:n%57==o或n%67==0确定真正解在算法中使用的变量:j:本变量的作用如下:依次产生应填在千位和百位上的数值(0到99)。n:存储一个可能解。在重复处理过程中记录已经进行的重复的次数,并用它来控制重复的次数;根据空举法用for()语句来实现找真解n及真解的个数c:开始真结束计数

3、器C计数;输出计数器C的值假输出真正解;计数器置C=0;J=0;J<100?n←10047+j*100;n正解吗?真J←j+1假返回程序:main(){intn,c,j;c=0;for(j=0;j<100;j=j+1){n=10047+j*100;If(n%57==0

4、

5、n%67==0){c=c+1;printf(“%d”,n);}}Printf(“Count=%d”,c)

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

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

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