说明:(1).从例1、例2可以看出,算法具有两个主要特点:
①有限性:一个算法在执行有限个步骤后必须结束.
"有限性"往往指在合理的范围之内,如果让计算机执行一个历时1000年才结束的算法,这虽然是有限的,但超过了合理的限度,人们也不把它视作有效算法."合理限度"一般由人们的常识和需要以及计算机的性能而定.
②确定性:算法的每一个步骤和次序应当是确定的.
例如,一个健身操中一个动作"手举过头顶",这个步骤就是不确定的、含糊的.是双手都举过头,还是左手或右手?举过头顶多少厘米不同的人可以有不同的理解.算法中的每一个步骤不应产生歧义,而应当是明确无误的.
(2).一般来说,算法应有一个或多个输出,算法的目的是为了求解,没有输出的算法是没有意义的.
例5 写出一个求有限整数列中的最大值的算法。
五.回顾小结
1.算法的概念:对一类问题的机械的、统一的求解方法.算法是由基本运算及规定的运算顺序所构成的完整的解题步骤,或者是按照要求设计好的有限的计算序列,并且这样的步骤或序列能解决一类问题.
2.算法的重要特征:
(1)有限性:一个算法在执行有限步后必须结束;
(2)确切性:算法的每一个步骤和次序必须是确定的;
(3)输入:一个算法有0个或多个输入,以刻划运算对象的初始条件.所谓0个输入是指算法本身定出了初始条件.
(4)输出:一个算法有1个或多个输出,以反映对输入数据加工后的结果.没有输出的
算法是毫无意义的.
六.课后作业
1.一个人带三只狼和三只羚羊过河,只有一条船,同船可以容纳一个人和两只动物.没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊.请设计过河的算法.
2.写出求的一个算法.