用穷举法解决问题PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
仆人到张老汉的店里打听鸡的价钱,张老汉告知“公鸡五文
钱一只,母鸡三文一只,小鸡一文三只”。于是,仆人给他
一百文钱,要求公鸡、母鸡、小鸡都要,数量不多不少正好
一百只,命他次日送到府上。这可难为了张老汉,他怎么凑
也凑不够这个数,只好问儿子。“小神童”不慌不忙,掐指
一算就给出了答案,第二天照数送到宰相府。宰相见难不倒
百钱百鸡代码:
Dim x, y, z As Integer For x = 1 To 100 For y = 1 To 100 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
解析法解决问题
❖ 解析法就是在分析具体问题的基础上,抽取 出一个数学模型,这个数学模型能用若干个 解析表达式表示出来,解决得了这些表达式, 问题也就得以解决。
❖ 四个环节: ❖ 分析具体问题——抽取数学模型——解析表
达式——解决问题。
3.2 用穷举法解决问题
3.2 用穷举法解决问题
1.什么是穷举法? 也叫枚举法、列举法
我们使用信用卡在柜员机上取钱时, 为什么系统要限制输入密码的次数?
写在最后
经常不断地学习,你就什么都知道。你知道得越多,你就越有力量 Study Constantly, And You Will Know Everything. The More
You Know, The More Powerful You Will Be
——将求解对象一一列举出来,然后逐一加以分 析、处理,并验证结果是否满足给定的条件,穷举 完所有对象,问题将最终得以解决。
任务一:水仙花数
❖ 水仙花数是指一个三位数,它的各位数的立方和正 好等于该数本身。如:153=13+53+33。请设计算法 求解“水仙花数问题”。
水仙花数算法:
范围
条件
❖ For 某整数=100 to 999 ❖ If 该数百位数字的立方+该数十位数字的立
❖ 通常可以从两个方面进行分析: ⑴确定范围:问题所涉及的情况有哪些,情况
的种数可不可以确定。 ⑵验证条件:分析出来的这些情
任务三:百钱买百鸡”
❖
相传我国南北朝时,京城有个卖鸡的张姓老汉,他有一
个儿子非常聪明,尤其擅长算术,到十二三岁时已是远近闻
名的“小神童”了。当朝宰相听说后想试探个究竟,于是派
方+该数个位数字的立ห้องสมุดไป่ตู้=该数 Then ❖ print 该数
❖ End if ❖ Next 某整数
任务二:编写求三位水仙花数程序
a=x\100 b=(x-a*100)\10 c=x-a*100-b*10
穷举法的特点:
①求解对象应该是有限的; ②有穷举规则 ③一时找不出解决问题的更好途径时;
问题分析:
“小神童”,又让仆人给张老汉一百文钱,要求再买一百只
鸡,搭配方法不能和上次一样。结果“小神童”又很快给出
了答案,宰相暗暗称奇,想最后再试一次,谁知还是没有难
倒“小神童”。
❖
这个故事就是我国古代数学名著《张邱建算经》里的百
鸡百钱问题。请用穷举法求解所有的组合方法。
百钱买百鸡
❖ ⑴确定范围 ❖ ⑵验证条件:
结束语
感谢聆听
不足之处请大家批评指导
Please Criticize And Guide The Shortcomings
讲师:XXXXXX XX年XX月XX日