如何绘制PAD图和N-S图(详细步骤)

在软件详细设计阶段有四个要点:N-S图,PAD图,程序流程图,PDL语言

对于程序流程图的绘制较简单,想详细了解可以看:

程序流程图详解(六大部分) (zhihu.com)

如何绘制PAD图和N-S图(详细步骤)_第1张图片

对于PDL语言这里也不是重点,我们只需要知道以下几种结构:

1.顺序型:顺序型由几个连续的处理步骤依次排列构成。

如何绘制PAD图和N-S图(详细步骤)_第2张图片

2.选择型:选择型是指由某个逻辑判断式的取值决定选择两个处理中的一个。

如何绘制PAD图和N-S图(详细步骤)_第3张图片

3.while型:while型循环是先判定型循环在循环控制条件成立时,重复执行特定的处理。

如何绘制PAD图和N-S图(详细步骤)_第4张图片

4.until型:until型循环是后判定型循环,重复执行某些特定的处理,直到控制条件成立为止。

如何绘制PAD图和N-S图(详细步骤)_第5张图片

5.多情况选择型:多情况型选择列举多种处理情况,根据控制变量的取值,选择执行其一。

如何绘制PAD图和N-S图(详细步骤)_第6张图片

一般的题型中会给出一段PDL语言,根据PDL语言绘制PAD图和N-S图,以以下这段PDL语言为例,来看一看详细绘制步骤:

如何绘制PAD图和N-S图(详细步骤)_第7张图片

N-S图:

也叫盒图,由美国学者I.Nassi 和 B.Shneiderman提出,所以又称N-S图,可以清晰的表示程序的结构以及流程,其主要特征为“矩形框”。

对于N-S图,通过以下画法表示语言的结构:

如何绘制PAD图和N-S图(详细步骤)_第8张图片

1.首先划分代码块,该段代码有三段代码块:

如何绘制PAD图和N-S图(详细步骤)_第9张图片

2.根据代码块绘制相应模块,并且用until包裹:

如何绘制PAD图和N-S图(详细步骤)_第10张图片

3.绘制第一个模块的具体内容:

if x>0 then x1
else x2
endif;

如何绘制PAD图和N-S图(详细步骤)_第11张图片

 4.绘制第二个模块:

S1;

如何绘制PAD图和N-S图(详细步骤)_第12张图片

5.绘制第三个模块,在第三个模块中,"if" 包裹着"if",先绘制大的"if"的框架:

if y>0 then y1
        if z>0 then z1

        else z2
        endif;
        S2;
else y2;
endif;

如何绘制PAD图和N-S图(详细步骤)_第13张图片

6.填充小的"if"中的内容:

        if z>0 then z1

        else z2
        endif;

如何绘制PAD图和N-S图(详细步骤)_第14张图片 

PAD图:

全称为Problem Analysis Diagram,即问题分析图表,利用二维树形结构表示程序的控制流,也就是将程序功能的路线图给画出来,既可以表示程序的逻辑,也可以表示程序的结构,区分它的方法是程序的最左端有一条“竖线”,表示程序的“主线”。

对于PAD图,通过以下画法表示语言的结构:

如何绘制PAD图和N-S图(详细步骤)_第15张图片

PAD图有两种画法,如果该流程不是很复杂,可以画为一张图,如果很复杂就可以画多张子图,只要代码段的功能能够完整的描述出来

1.首先通过多张子图绘制,这一代码段有3个模块构成:

如何绘制PAD图和N-S图(详细步骤)_第16张图片

2.再画A的具体内容:

如何绘制PAD图和N-S图(详细步骤)_第17张图片

3.画B的具体内容:

如何绘制PAD图和N-S图(详细步骤)_第18张图片

其中C的具体结构为:

如何绘制PAD图和N-S图(详细步骤)_第19张图片

而对应的画在一张图的效果如下:

如何绘制PAD图和N-S图(详细步骤)_第20张图片

你可能感兴趣的:(学习日常(考研向),信息可视化,NS图,PAD图,软件详细设计)