算法被称为计算机的基础,它是一个起源于数学的概念。算法是描述在有限的步

骤内求解从某一个问题所使用的的一组规则。也就是一个算法应该具有以下5个重要的

特征:        

         1. 输入:必须有零个或多个输入量。                   

         2. 输出:应有一个或多个输出量,输出量是算法计算出的结果。

         3. 确定性:也就是算法的描述必须无歧义,(就是说没有否认和错误的)

以保证算法的执行结果是确定的。                   

         4. 有限性:算法必须在有限步骤内实现。                   

         5. 有效性:又称可行性。能够实现。从算法中描述的操作都可以通过执行

有限次已经 实现的基本运算来实现。                       

    算法是计算机处理信息的本质,因为计算机程序本质上是一个算法,在计算机中

是如何应用执行一个指定任务的,我们来用计算10的阶乘或打印学生的成绩单。

如举个例子 :在JavaScript中如何来演示10的阶乘算法:

         var  element  = 10;  //定义输入  

         var  out = 1;  //定义输出                        

         for (var  i=1;  i<=element;  i++)   { //1~11 有限步骤

          out  *= i;}

          alert (out);  //显示输出                     

    算法是有针对性的。一个算法只能解决它所针对的一类特定问题,就像阶乘算法

无法解决成绩单的打印问题,但是其他数字的阶乘却可以使用相同的算法。在用这种

算法之前我们必须先制定一个有效的计划,就是要设计“流程图”,如图所示:

    1. 图1. 就是我们所制定的流程图范例的演示计划比例图,很好的利用了第一多

边形空格设为“接收输入element=0”,然后往下列入第二空格图形设为“如果输入

值为0结果为1”, 显然我们的计划步骤从‘没有’发展到‘’,并且在最后一个方

形空格能够发展成为一个集体的值,也就是得到一个显示输出结果。这里只是一个完

成简单的流程图,展示了一个用流程图描述的0的阶乘算法。流程图的的做法早已不

能满足需求,也是落后的步骤程序。

                                                                                                 clip_p_w_picpath001