枚举算法.docx
- 文档编号:29029602
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:11
- 大小:108.13KB
枚举算法.docx
《枚举算法.docx》由会员分享,可在线阅读,更多相关《枚举算法.docx(11页珍藏版)》请在冰豆网上搜索。
枚举算法
枚举算法
一、定义:
枚举法就是按问题本身的性质,一一列举出该问题所有可能的解,并在逐一列举的过程中,检验每个可能解是否是问题的真正解,若是,我们采纳这个解,否则抛弃它。
在列举的过程中,既不能遗漏也不应重复。
通过生活实例,理解枚举算法的定义,找出枚举算法的关键步骤及注意点
1.在枚举算法中往往把问题分解成二部分:
(1)一一列举:
这是一个循环结构。
要考虑的问题是如何设置循环变量、初值、终值和递增值。
循环变量是否参与检验。
(要强调本算法的主要是利用计算机的运算速度快这一特点,不必过多地去做算法优化工作。
)
(2)检验:
这是一个分支结构。
要考虑的问题是检验的对象是谁?
逻辑判数后的二个结果该如何处理?
2.分析出以上二个核心问题后,再合成:
要注意循环变量与判断对象是否是同一个变量。
3.该算法的输入和输出处理:
输入:
大部分情况下是利用循环变量来代替。
输出:
一般情况下是判断的一个分支中实现的。
用循环结构实现一一列举的过程,用分支结构实现检验的过程,理解枚举算法流程图的基本框架。
\
二、算法实例
【例5】.求1-1000中,能被3整除的数
对该问题的分析:
(1)从1-1000一一列举,这是一个循环结构
(2)在循环中对每个数进行检验。
凡是能被3整除的数,打印输出,否则继续下一个数。
【例6】.找出[1,1000]中所有能被7和11整除的数
本例参照上例,修改其中的判断部分。
【例7】.一张单据上有一个5位数的编号,万位数是1,千位数时4,百位数是7,个位数、十位数已经模糊不清。
该5位数是57或67的倍数,输出所有满足这些条件的5位数的个数。
【例8】一张单据上有一个5位数的编号,万位数是1,千位数时4,十位数是7,个位数和百位数已经模糊不清。
该5位数是57或67的倍数,输出所有满足这些条件的5位数的个数。
【例9】.找水仙花数(若三位数x=100a+10b+c,满足a3+b3+c3=x,则x为水仙花数)
【例10】.百鸡百钱问题(公鸡5元,母鸡3元,1元3只小鸡花100元钱,买100只鸡,怎么买?
)
【例5】.求1-1000中,能被3整除的数。
【例6】.找出[1,1000]中所有能被7和11整除的数。
【例7】.一张单据上有一个5位数的编号,万位数是1,千位数时4,百位数是7,个位数、十位数已经模糊不清。
该5位数是57或67的倍数,输出所有满足这些条件的5位数的个数。
【例8】一张单据上有一个5位数的编号,万位数是1,千位数时4,十位数是7,个位数和百位数已经模糊不清。
该5位数是57或67的倍数,输出所有满足这些条件的5位数的个数。
【例9】.找水仙花数(若三位数x=100a+10b+c,满足a3+b3+c3=x,则x为水仙花数)
【例10】.百鸡百钱问题(公鸡5元,母鸡3元,1元3只小鸡花100元钱,买100只鸡,怎么买?
)
【例5】程序代码:
i=1
Dowhilei<=1000
Ifi/3=INT(i/3)then
printi
Endif
i=i+1
Enddo
【例6】可以用二种方法实现。
方法一:
ifi/7<>Int(i/7)then
Ifi/11=Int(i/11)then
Printi
Endif
Endif
方法二:
ifi/7=Int(i/7)andi/11=Int(i/11)then
Printi
Endif
【例7】程序代码:
j=0
DoWhilej<100
n=14700+j
IfnMod57=0OrnMod67=0Then
Printn
EndIf
j=j+1
Loop
【例8】程序代码:
j=0
DoWhilej<10
i=0
DoWhilei<10
n=14070+i*100+j
IfnMod57=0OrnMod67=0Then
Printn
EndIf
i=i+1
Loop
j=j+1
Loop
【例9】.程序代码:
i=100
DoWhilei<=999
a=i\100
b=(iMod100)\10
c=iMod10
Ifi=a*a*a+b*b*b+c*c*cThenPrinti
i=i+1
Loop
【例10】程序代码:
x=0
DoWhilex<=20
y=0
DoWhiley<=100-x
z=100-x-y
If(x*5+y*3+z\3=100)And(zMod3=0)Then
Printx,y,z
EndIf
y=y+1
Loop
x=x+1
Loop
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 枚举 算法