上QQ阅读APP看书,第一时间看更新
1.2.1 认识计算机中的算法
计算机中的算法可分为如下两大类。
· 数值运算算法:求解数值。
· 非数值运算算法:事务管理领域。
假设存在如下运算:1×2×3×4×5,为了计算上述运算结果,最普通的做法是按照如下步骤进行计算。
第1步:先计算1乘以2,得到结果2。
第2步:将步骤1得到的乘积2乘以3,计算得到结果6。
第3步:将6再乘以4,计算得24。
第4步:将24再乘以5,计算得120。
最终计算结果是120,上述第1步到第4步的计算过程就是一个算法。如果想用编程的方式来解决上述运算,通常会使用如下算法来实现。
第1步:假设定义t=1。
第2步:令i=2。
第3步:把t×i的乘积仍然放在变量t中,可表示为t×i→t。
第4步:把i的值加1,即i+1→i。
第5步:如果i≤5,返回重新执行步骤3以及其后的步骤4和步骤5;否则,算法结束。
由此可见,上述算法方式就是数学中的“n!”公式。既然有了公式,在具体编程的时候,只需要使用这个公式就可以解决上述运算问题。
再看下面的一个数学应用问题。
假设有80个学生,要求打印输出成绩在60分以上的学生。
在此用n表示学生学号,用ni表示第i个学生的学号;用cheng表示学生成绩,用chengi表示第i个学生的成绩。根据题目要求,可以写出如下算法。
第1步:1→i。
第2步:如果chengi≥60,则输出ni和chengi,否则不输出。
第3步:i+1→i。
第4步:如果i≤80,返回步骤2;否则,结束。
由此可见,算法在计算机中的地位十分重要。所以在面对一个项目应用时,一定不要立即编写程序,而是要仔细思考解决这个问题的算法是什么。想出算法之后,以这个算法为指导思想来编程。