2.2.1.2计算机解决问题的过程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实践1 农夫的故事
一个农夫带着一条狼、一头山羊和一 篮蔬菜要过河,但只有一条船。乘船时, 农夫只能带一样东西。当农夫在场的时候, 这三样东西相安无事。一旦农夫不在,狼 会吃羊,羊会吃菜。请设计一个算法,使 农夫能安全地将这三样东西带过河。
对于同一个问题,解决方法是否只有一种??
演示课件
过河步骤:
能不能让计算机来帮助我们解 决问题呢?
肯定地回答:能

如何用计算机解决问题
计算机只懂得根据人的命令来执行相关的程序,而我们要编 写程序, 首先要分析问题: 对问题进行详细地分析,通过分析,弄清楚已知条件下的初 始状态及要达到的目标,找出求解问题的方法和过程,并抽取出 一个数学模型,形成算法; 然后要设计算法: 将这个数学模型连同它要处理的数据用计算机能识别的方式 描述出来,使之成为计算机能处理的对象; 最后,编写程序: 用程序设计语言设计出具体的问题求解过程,形成计算机程 序, 这样,计算机就会按照我们给定的指令一条一条地进行处理了。
当然,解,不是唯一的,
每差105,都是另一个解答,
但如果结合实际问题,答案往往就是唯 一的了。 例如一队士兵的大约人数,韩信应是知 道的。
总结:人解决问题的思路
首先:观察、分析问题,收集必要的信息, 然后根据已有的知识、经验进行判断、推理、 尝试按一定的方法和步骤去解决问题。 第二:解决同一个问题会有多种求解的方法。 不同的方法有优劣之分。 第三:解决问题有时还要靠人的“顿悟”、 “灵感”。
• 计算机程序( Computer Program)就是指示计算
• •
• •
机如何去解决问题或完成任务的一组可执行的指令。 程序设计(Program Design)就是寻求解决问题的 方法,并将其实现步骤编写成计算机可以执行的程 序的过程。 程序设计语言( Program Language)泛指一切用 于书写计算机程序的语言。 注意:程序设计语言和计算机语言(Computer Language)是两个不同的概念,程序设计语言是一 种重要的计算机语言。
解二:
解一:
1、农夫带羊过河
2、农夫回来
1、农夫带羊过河
2、农夫回来 3’、带蔬菜过河 4、把羊带回来 5’、把狼带过河 6、农夫回来 7、把羊带过河
3、把狼带过河
4、把羊带回来 5、带蔬菜过河 6、农夫回来 7、把羊带过河
实践2:
“韩信分油”的算术游戏: “3斤葫芦、7斤罐、10斤油篓分 一半”,就是用3斤、7斤和10斤 这样三种容器来分出两个5斤,而 量器只能是这三种东西。
歌诀
s 70a 21b 15c 105k
明朝数学家程大位在《算法统宗》中把上 式总结为一首通俗易懂的歌决: 三人同行七十稀,五树梅花廿一枝, 七子团圆正半月,除百零五便得知。 其中正半月是指15,这个口诀把3,5,7; 70,21,15及105这几个关键的数都总结在内 了。详细说,歌诀的含义是:用3除的余数乘 70,5除的余数乘21,7除的余数乘15,相加后 再减去(“除”当“减”讲)105的适当倍数,就 是要求的(最小)解了。
实践3:
有一行数字:1,1,2,3,5, 8,13,21……,试从中找出规律, 人是怎样解决这个问题的?计算机 是否能按人的思维去解决?它怎样 做?
2.《孙子算经》中“有物不知其数” 问题的解答
1)筛法. 首先写出“用3除余2”的数:2,5,8,11, 14,17,20,23,26,29,… 其中,“用5除余3”的数:8,23,… 其中,“用7除余2”的数:23,… 由此得到,23是最小的一个解。 至于下一个解是什么,要把“…”写出来才 知道;实践以后发现,是要费一点儿功夫的。
计算机解决问题的过程
计算机是人脑的延伸,要研 究计算机解决问题的过程,需要 从人解决问题的过程谈起。
1.“韩信点兵”的故事
相传我国汉代有位大将军叫韩信,他在 点兵时让士兵分别从1~3、1~5、1~7报数, 然后报告各次的余数,这样,就知道总共有 多少士兵。然后韩信就凭这些数,可以求
得这队士兵的总人数。
这个问题即著名的“韩信点兵”问题,又 称“鬼谷算”、“秦王暗点兵”
这里面有什么秘密呢?
2.《孙子算经》中的题目
我国古代数学名著《孙子算经》中 有“物不知数”的题目:今有物不知其 数,三三数之剩2,五五数之剩3,七七 数之剩2,问物几何?
请同学们开动脑筋,算算该“物”最 少有几个?看看能不能找出多种解决方法
2)公倍数法
பைடு நூலகம்
现在仿照上边用过的“公倍数法”, 设要求的数为 x ,则依题意,得联立 方程组
x 3n1 2 x 5n2 3 x 7n 2 3
(*)
题:有物不知其数,三三数之剩a,五五 数之剩b,七七数之剩c,问物几何?
答:解为, 70a 21b 15c 105k s ( k Z, k 的选取应使 s 0 ).
如何用计算机解决问题
设计一个软件的步骤是:
运行程序 验证结果 问题解决
开始
分析问题
设计算法
编写程序
无论使用现成的软件解决问题,还是自己动
手编程解决问题,其实质都是一样的:现有 的计算机软件同样也经历了这些过程, 其差别在于,用程序设计解决问题需要我们 亲自动手设计软件,而使用现成的软件,是 别人已经给我们设计好了的。
相关文档
最新文档