算法与程序的关系是什么
程序包含算法,算法是程序的灵魂,一个需要实现特定功能的程序,实现它的算法有很多种,算法的优劣决定着程序的好坏。程序员很熟练的掌握了程序设计语言的语法,进行程序设计,软件开发的时候就是设计好的算法,加上软件工程的理论才能做出较好的系统。算法是指解决问题的一种方法或一个过程。算法是若干指令的有穷序列,满足性质:
1、输入:由外部提供的量作为算法的输入。
2、输出:算法产生至少一个量作为输出。
3、确定性:组成算法的每条指令是清晰,无歧义的。
4、有限性:算法中每条指令的执行次数是有限的,执行每条指令的时间也是有限的。
程序是算法用某种程序设计语言的具体实现。程序可以不满足算法的性质。例如操作系统,是一个在无限循环中执行的程序,因而不是一个算法。操作系统的各种任务可看成是单独的问题,每一个问题由操作系统中的一个子程序通过特定的算法来实现。该子程序得到输出结果后便终止。