过程设计
程序流程图
流程图是对过程、算法、流程的一种图形表示,它对某个问题的定义、分析或解法进行描述,用定义完善的符号来表示操作、数据、流向等概念。
流程图分为数据流程图、程序流程图、系统流程图、程序网络图和系统资源图5种。这里主要介绍程序流程图。
程序流程图也称为程序框图,是-种比较直观、形象地描述过程的控制流程的图形工具。它包含5种基本的控制结构:顺序型、选择型、先判定型循环(WHILE-DO)、后判定型循环(DO-WHILE)和多分支选择型。
程序流程图的主要优点是:
1)采用简单规范的符号,画法简单
2)结构清晰,逻辑性强
3)便于描述,容易理解
程序流程图的主要缺点是:
1)不利于逐步求精的设计
2)图中可用箭头随意地对控制进行转移,与结构化程序设计精神相悖
3)不易于表示系统中所含的数据结构.
4)当目标系统比较复杂时,流程图会变得很繁杂、不清晰
N-S图
N-S图是由Nassi和Shneiderman提出的,又被称为盒图,是- -种符合结构化程序设计原则的图形红具。N-S图的基本符号如图所示。
N-S图用类似盒子的矩形以及矩形之间的嵌套来表示语句或语句序列。N-S图内部没有箭头,因此,它所表示的控制流程不能随便进行转移。
N-S图的主要特点可以归纳为:
1)不允许随意的控制转移,有利于严格的结构化程序设计;
2)可以很方便地确定一个特定控制结构的作用域, 以及局部数据和全局数据的作用域;
3)可以很方便地表示嵌套关系以及模块之间的层次关系。
用N-S图表示算法,思路清晰,结构良好,容易设计,因而可有效地提高程序设计的质量和效率。
PAD图
PAD图(Problem Analysis Diagram)也叫问题分析图,它是由日本日立公司于1973年发明的。PAD图基于结构化程序设计思想,用二维树形结构的图来表示程序的控制流及逻辑结构。在PAD图中,-条竖线代表一个层次, 最左边的竖线是第一层控制结构,随着层次的加深,图形不断地向右展开。PAD图的基本控制符号如图所示。
PAD图为常用的高级程序设计语言的各种控制语句提供了对应的图形符号。
它的主要特点是:
1)PAD图表示的程序结构的执行顺序是自最左边的竖线的上端开始,自上而下,自左向右;
2)用PAD图表示的程序片断结构清晰、层次分明;
3)支持自顶向下、逐步求精的设计方法;
4)只能用于结构化的程序设计;
PAD图不仅可以表示程序逻辑,还能表示数据结构。