你也能编好程序

🏠 首页 《无线电》杂志 1987年 🔗 第220期 🔗 第8页 分类:技术市场 🔗 张建明 🔗

程序设计的方法和步骤,在一般的计算机语言课本中很少涉及。多数语言书重点是讲语法,有时讲点程序设计的技巧。从而导致初学计算机语言的人,在编写程序对无从下手。

下面就程序设计的一般方法和步骤谈自己的体会,供初学者参考。

设计一个完整的计算机程序,一般要经过以下五个步骤。

(一)问题的提出 即首先要弄清解决的问题,确定问题的性质与要求,其中包括:(1)以何种方式输出结果。(2)以何种方式输入数据。(3)建立数学模型。(4)分析哪些因素会影响处理结果。或者说解决此问题应具备哪些条件。(5)功能上有哪些要求。以上五点中,关键是建立数学模型、确定数据结构。对于科学计算问题,一般不需要程序设计者自己建立数学模型。但在非数值领域,程序设计者往往为此要付出艰苦的劳动。

(二)算法设计 所谓算法设计,就是把数学模型规定的任务,转化为能够由顺序分支和循环三种基本结构组成的解题步骤。如果说数学模型规定“做什么”,那么算法设计的任务就是要解决“怎么做”。

各种类型的数学模型都有许多现成的算法。弄清要解决的问题后,就要从自己掌握的算法中找出几个适合于所提问题的算法,相互比较,再从中选出最佳(效率高,容易懂,易于实现)的算法。所以说,平时留心积累各类数学模型的算法,弄清它们的特点和适用场合,是程序设计者的重要任务。如果没有现成的算法。则可采取:找出相近问题的算法加以修改;或自行设计一个适用的算法。

在设计算法的过程中,如果能用文字或代码的形式对每一步骤作出较好的描述,将对于设计良好的算法有很大的帮助。

(三)偏程序 也叫代码设计或程序编码。就是按照用文字或代码(有时也采用流程图)描述算法,采用某种语言(如BASIC、CO BOL也可以是汇编语言)或代码实现程序的过程,这一步工作主要包括:(1)用选定的语言(如:BASIC语言),严格按照语法和结构要求,写出所需的语句;(2)补充算法中未加说明的语句和输入、输出格式。(3)进一步确定数据结构;(4)添加必要的说明。

这一步的突出特点是细致,没有前两步困难,但也不能掉以轻心。以BASIC语言为例:输入、输出格式以及循环次数等容易出错的地方,要加倍小心。

(四)查错和测试 除非特别简单的程序,即使有多年实践经验的程序员,也不能保证第一次写出的程序完全正确。为了发现和消除程序中的错误,就要进行查错和测试。程序测试是为了发现错误而执行程序的过程。

1.错误的种类。程序中的错误可分为三类。(1)语法错误:一般是程序设计者对语言语法不太熟悉或编程时不注意造成的。(2)执行错误:执行阶段发现的错误。如数据区无数据可读或数据不全,运算结果超出数的表示范围。(3)逻辑错误:来源于程序逻辑与题目的要求不符合。

2.查错和测试。对执行错误,机器可以发出“错误信息”。设计者可以按照这些信息确定错误的性质和位置,并加以排除。

初学者编好程序后,往往急于上机,想借助编译或运行迅速找出程序的错误。其实这种做法是很不经济的。正确的方法是:程序写好后应仔细检查,把错误(尤其是语法或结构错误)尽可能消除在上机之前。只有确信程序没有错误时,再拿去上机调试。测试的目的主要是发现逻辑错误。由于计算机对这类错误不显示错误信息,只能利用设定的测试数据才能发现存在的错误。

3.常用的查错方法。在程序调试时,运用以下方法,可以帮助迅速找出错误的位置。

(1)在程序中适当的地方插入输出结果语句,以显示需要的信息。(2)在需要的地方插入暂停语句,使程序暂时停止执行,以便检查中间结果是否正确。

(五)编制程序文件 这步工作往往被初学者忽略。如果说编程是辛勤的劳动,那么编制有关文件则可看作是从事收获性的工作。

初学编程者,只要按照科学的方法和步骤分析问题,编制程序,经过多次实践,那么你也能编好程序。(张建明)