内容正文:
第一章 算法初步
1.1 算法与程序框图
1.1.1 算法的概念
1.了解算法的概念.
2.理解用自然语言描述的算法.
3.通过实例,提高对解决具体问题的步骤进行分析的能力,体会算法的基本思想.
1.算法的概念
算术运算
一定规则
明确
有限
计算机程序
12世纪的
算法 是指用阿拉伯数字进行_________的过程
数学中的
算法 通常是指按照_________解决某一类问题的_____
和_____的步骤
现代算法 通常可以编成___________,让计算机执行并解决问题
2.算法在计算机中的应用
(1)计算机解决任何问题都要依赖于_____.
(2)只有将解决问题的过程分解为若干个___________,即_____,
并用计算机能够接受的“语言”准确地描述出来,计算机才能
够解决问题.
算法
明确的步骤
算法
1.下面哪个不是算法的特征 ( )
A.概括性 B.明确性
C.有穷性 D.唯一性
【解析】选D.结合算法的概念,只有唯一性不是算法的特征.
2.洗衣机的使用说明书 算法.(填“是”或“不是”)
【解析】说明书是按步骤完成洗衣过程的任务,故是算法.
答案:是
3.以下有六个步骤:
①拨号;②等拨号音;③提起话筒(或免提功能);④开始通话或挂机(线路不通);⑤等复话方信号;⑥结束通话.
试写出打一个本地电话的算法 .(只写编号)
【解析】根据常识知,其顺序应是③②①⑤④⑥.
答案:③②①⑤④⑥
一、算法的概念
结合算法的概念,思考下列问题.
探究1:数学中的算法与12世纪的算法相比,显著的特征是什么?
提示:数学中的算法的显著的特征是顺序性、明确性和有限性.
探究2:任何一个算法是不是都有一个明确的结果?为什么?
提示:是,因为算法的每一步都是确定的,并且能够有效地执行,而且得到确定的结果,不能模棱两可,故任何一个算法都有一个明确的结果.
【探究总结】算法的五个特征
(1)概括性:能够解决一类问题,并能重复使用.
(2)逻辑性:算法从初始步骤开始分为若干个明确的步骤,前一步是后一步的前提,而且每一步都是正确无误的,从而组成了有很强逻辑性的步骤序列.
(3)有穷性:一个算法必须保证执行了有限步骤之后结束.
(4)不唯一性:求解某一问题的算法不一定只有一个.
(5)普遍性:许多问题都可以设计成合理的算法去解决.
【拓展延伸】算法概念的历史
算法(algorithm)一词源于算术(algorism),即算术方法,是指一个由已知推求未知的运算过程.后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法.
广义地说,算法就是做某一件事的步骤或程序.菜谱是做菜肴的算法,歌谱是一首歌曲的算法.在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序.比如解方程的算法、函数求值的算法、作图的算法等,不过这种经验并没有得到应有的升华.只有在完整地学习了算法后,才能把这些知识提升到新的高度来认识.算法是对解题方案的准确而完整的构造性的描述.
二、用自然语言设计算法
探究1:一个猎人带着一匹狼和一头羊过河,但是渡船一次最多只能坐下一个人和一个动物,而且当狼和羊单独在一起的时候,狼会吃掉羊,请帮猎人设计一个渡河算法.
提示:因为猎人不在时狼会吃掉羊,所以猎人先把狼单独送到对岸去.
算法如下:
第一步,猎人和狼一起同船渡过河去;
第二步,猎人独自划船渡河回来;
第三步,猎人和羊一起同船渡过河去.
探究2:算法与一般意义上具体问题的解法的区别与联系是什么?
提示:(1)它们之间是一般与特殊的关系,也是抽象与具体的关系.
(2)要设计出解决一类问题的算法,可以借助于此类问题中的某一个问题的解决过程和思路进行设计,而此类问题中的任何一个具体问题都可以利用这类问题的一般算法来解决.
【探究总结】
1.算法设计的一般原则
(1)必须解决一类问题,可以重复使用.
(2)尽量简单且步骤少.
(3)步步正确,可以执行.
2.设计算法的三个关注点
(1)算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或者看成按要求设计好的、有限的、确定的计算序列,并且这些序列能够解决一类问题.
(2)用自然语言描述一个算法,最便捷的方式就是按解决问题的步骤进行描述,每一步做一件事情.这样描述的算法体现出按部就班程序性的特点.
(3)对于在解决问题过程中反复进行的步骤,同学们要学习用循环的语言进行描述.用循环语言进行描述时,通常分三个步骤:首先要给一个初始值,接着表达重复做的事情,最后要进行终止判断.
类型 一 算法的概念
1.以下关于算法的说法正确的是 ( )
A.描述算法可以有不同的方式,可用自然语言也可用其他语言
B.算法可以看成是按照要求设计好的有限的确切的步骤或计算序列,并且