用穷举法解决问题课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
’定义变量x,a,b,c为整数型 ’循环变量范围 ’ 百位数字赋值给a ’十位数字赋值给b ’个位数字赋值给c ’如果条件成立,则 ’输出水仙花数x
水仙花数算法:
穷举范围
❖ For 某整数=100 to 999
❖ If 该数百位数字的立方+该数十位数字的立 方+该数个位数字的立方=该数 Then
❖ print 该数
❖
11、 人 总 是 珍 惜为 得到。 20.12.1209:04:1309:04Dec-2012-Dec-20
❖
12、 人 乱 于 心 ,不 宽余请 。09:04:1309:04:1309:04Saturday, December 12, 2020
❖
13、 生 气 是 拿 别人 做错的 事来惩 罚自己 。20.12.1220.12.1209:04:1309:04:13December 12, 2020
一算就给出了答案,第二天照数送到宰相府。宰相见难不倒
“小神童”,又让仆人给张老汉一百文钱,要求再买一百只
鸡,搭配方法不能和上次一样。结果“小神童”又很快给出
了答案,宰相暗暗称奇,想最后再试一次,谁知还是没有难
倒“小神童”。
❖
这个故事就是我国古代数学名著《张邱建算经》里的百
鸡百钱问题。请用穷举法求解所有的组合方法。
❖ print 该数
❖ End if ❖ Next 某整数
满足条件
任务二:实践求三位水仙花数程序
❖ a=x\100 ❖ b=(x-a*100)\10 ❖ c=x-a*100-
b*10
Fra Baidu bibliotek
水仙花数代码:
Dim x, a, b,c As Integer For x = 100 To 999
a = x \ 100 b = (x - a * 100) \ 10 c= x - a * 100 - b * 10 If a^3 + b^3 + c^3 = x Then Print x End If Next x
❖ End if ❖ Next 某整数
满足条件
穷举法的适用条件:
①求解对象应该是有限的; ②可以按照某种规则列举对象 ③一时找不出解决问题的更好途径时;
穷举法解决问题步骤:
⑴确定范围:
⑵验证条件:
任务三:百钱买百鸡”
❖
相传我国南北朝时,京城有个卖鸡的张姓老汉,他有一
个儿子非常聪明,尤其擅长算术,到十二三岁时已是远近闻
解析法解决问题步骤
1、问题分析 未知----已知 数学表达式 2、编程实现
3.2 用穷举法解决问题
马征征 2011年4月
3.2 用穷举法解决问题
1.什么是穷举法? 也叫枚举法、列举法
——将求解对象一一列举出来,然后逐一加以分 析、处理,并验证结果是否满足给定的条件,穷举 完所有对象,问题将最终得以解决。
为什么系统要限制输入密码的次数?
小结
1、穷举法特点: 求解对象有限,按照某种规则
2、穷举法分析: ⑴确定范围 ⑵验证条件
❖
9、 人 的 价 值 ,在 招收诱 惑的一 瞬间被 决定。 20.12.1220.12.12Saturday, December 12, 2020
❖
10、 低 头 要 有 勇气 ,抬头 要有低 气。09:04:1309:04:1309:0412/12/2020 9:04:13 AM
❖
16、 业 余 生 活 要有 意义, 不要越 轨。2020年 12月 12日 星期六 9时4分 13秒09:04:1312 December 2020
❖
17、 一 个 人 即 使已 登上顶 峰,也 仍要自 强不息 。上午 9时4分 13秒上 午9时4分 09:04:1320.12.12
谢谢大家
名的“小神童”了。当朝宰相听说后想试探个究竟,于是派
仆人到张老汉的店里打听鸡的价钱,张老汉告知“公鸡五文
钱一只,母鸡三文一只,小鸡一文三只”。于是,仆人给他
一百文钱,要求公鸡、母鸡、小鸡都要,数量不多不少正好
一百只,命他次日送到府上。这可难为了张老汉,他怎么凑
也凑不够这个数,只好问儿子。“小神童”不慌不忙,掐指
百钱买百鸡
❖ ⑴确定范围 公鸡 母鸡 小鸡
⑵验证条件:
5*x +3*y+1/3*z=100 x+y+z=100
百钱百鸡代码:
Dim x, y, z As Integer For x = 1 To 20 For y = 1 To 33 For z = 1 To 100 If (5 * x + 3 * y + 1 / 3 * z = 100) And (x + y + z = 100) Then Print x, y, z End If Next z Next y Next x End Sub
❖
14、 抱 最 大 的 希望 ,作最 大的努 力。2020年 12月 12日 星期六 上午9时 4分13秒 09:04:1320.12.12
❖
15、 一 个 人 炫 耀什 么,说 明他内 心缺少 什么。 。2020年 12月 上午9时 4分20.12.1209:04December 12, 2020
任务一:水仙花数
❖ 水仙花数是指一个三位数,它的各位数的立方和正 好等于该数本身。如:153=13+53+33。
❖ 请设计算法求解“水仙花数问题”。
⑴确定范围:
⑵验证条件:
水仙花数算法:
穷举范围
❖ For 某整数=100 to 999
❖ If 该数百位数字的立方+该数十位数字的立 方+该数个位数字的立方=该数 Then