一个程式主要应该包括两方面内容:一是对数据组织的描述,另一个则是对程式操作的描述。对数据组织的描述称为数据结构,而对程式操作的描述称为算法。
严格地说,算法是对特定问题求解步骤的一种描述,是指令的有限序列。一般地,一个问题的算法并不唯一,可能有很多种,一个给定的算法解决一个特定的问题。
基本介绍
- 中文名:算法表示法
- 外文名:algorithmic notation
- 定义:特定问题求解步骤的一种描述
- 表示法:流程图
- 系统:计算机
- 套用学科:计算机原理
算法的特徵
一个算法是为解决某一特定类型的问题而制定的一个实现过程,例如,建造一栋楼之前要先在图纸上绘出其构造图,算法就是在编写程式前先整理出的基本思路。它具有下列特徵:
(1)有穷性
一个算法必须在执行有穷步之后结束且每一步都可在有穷时间内完成,不能无限地执行下去。
(2)确定性
算法的每一个步骤都应当是确切定义的,对于每一个过程不能有二义性,将要执行的每个动作必须严格而清楚地规定。
(3)可行性
算法中的每一步都应当能有效地运行,也就是说算法应是可行的,并要求最终得到正确的结果。
(4)输入
一个算法应有零个或多个输入,输入是在执行算法时需要从外界取得必要的信息,即算法所需的初始量等信息。
(5)输出
一个算法有一个或多个输出,什幺是输出?输出就是算法最终所求的结果。
流程图描述
流程图是一种传统的算法表示法,它用一些图框来代表各种不同性质的操作,用流程线来指示算法的执行方向。由于它直观形象,易于理解,所以套用广泛,特别是在语言发展的早期阶段,只有通过流程图才能简明地表述算法。常见的流程图符号:
1、起止框:是用来标识算法开始和结束的。
2、输入、输出框:用来标识程式输入或输出常量、变数或表达式。
3、判断框:其作用是对一个给定的条件进行判断,根据给定的条件是否成立来决定如何执行后面的相应操作。
4、处理框:它里面大多都是表达式,常常用来处理运算或比较式子。
5、流程线:是连线图框用的,是流程图中必不可少的组成部分。
6、注释框:起到解释说明的作用。
7、连线点:是将画在不同地方的流程线连线起来。
例子
例:从键盘中输入3个数,分别赋给a、b、c,要求按大小顺序把它们列印出来,流程图如图所示。

(1)程式开始,按照顺序输入a、b、C的值,然后对比a和b的大小,如果a>b为Y(yes),那幺继续对比a和C的大小,如果a小于c,那幺就说明,c最大,a次之,b最小,所以按照从大到小的顺序输出c、a、b,程式结束。
(2)如果a不大于b(a小于等于b),那幺就是N(No),所以a与b的值互换。然后判断a是不是小于c,如果a也确实小于c,那幺就说明,c最大,a次之,b最小,所以按照从大到小的顺序输出c、a、b,程式结束。
(3)如果a不小于c(a大于等于c),那幺按照N(No)的流程线路执行,判断b是不是真的小于c,如果b真的小于c,那幺执行Y(yes)流程线路,按照从大到小的顺序输出a、c、b,程式结束。
(4)如果b不小于c(b大于等于c),那幺按照N(No)的流程线路执行,按照从大到小的顺序输出a、b、C,程式结束。