编程是为了让计算机帮助我们解决各种各样的问题,任何问题的解决都有一定的方法和步骤,计算机解决问题的处理步骤我们称之为算法。
在计算机编程的过程中,提到“算法”总是让人觉得很深奥,很难理解到底什么是算法?以及算法在程序设计过程中起到了什么作用?其实在现实生活中我们经常会用“算法”的思想在解决一些问题,最常见的就是根据菜谱做菜。
菜谱记录了做出各色各样美味菜品的方法步骤。比如制作红烧肉的菜谱,会把制作红烧肉所必需的材料及用量都标注清楚,并且把烹制的过程、每一步需要的时间等都详细记录下来。任何人只要完全按照菜谱的方法和步骤去做,就一定能烹制出美味的红烧肉。而“算法”就是能让程序员编写出可靠、高效的计算机程序的“菜谱”(见图 1)。
编程是为了让计算机解决特定的问题,编程之前首先需要明确计算机解决该问题的具体步骤,这个处理步骤就是编写该程序所需要的“算法”。解决一个问题可以用不同的方法和步骤,因而针对同一问题的算法也有多种(见图 2)。
而编写程序就是通过某一种程序设计语言(比如 C语言)对算法的具体实现。算法独立于任何程序设计语言,同一算法可以用不同的程序设计语言来实现(见图 3)。
C语言程序:
#include <stdio.h>
int main()
{
int x=7;
while(x<1000)
{
printf("%d\n",x);
x=x+7;
}
system("pause");
return 0;
}
PASCAL语言程序:
program pl(input,output);
var x:integer;
begin
x:=7;
while x<1000 do
begin
writeln(x);
x:=x+7;
end;
end;