详细设计的工具——PAD图[通俗易懂]

详细设计的工具——PAD图[通俗易懂]目录一、PAD图的概念二、PAD图的基本符号三、PAD图的优点四、PAD图的应用一、PAD图的概念PAD图(ProblemAnalysisDiagram),由日本日立公司1973年发明以后,已得到一定程度的推广。它用二维树形结构的图来表示程序的控制流,将这种图翻译成程序代码比较容易。它既克服了传统的流程图不能清晰表现程序结构的缺点,又不像N-S图那样受到把全部程序约束在一个方框内的限制,这就是其优势所在。二、PAD图的基本符号(a)顺序;(b)选择;(c)C

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

目录

一、PAD图的概念

二、PAD图的基本符号

三、PAD图的优点

四、PAD图的应用


一、PAD图的概念

PAD图(Problem Analysis Diagram),由日本日立公司1973年发明以后,已得到一定程度的推广。它用二维树形结构的图来表示程序的控制流,将这种图翻译成程序代码比较容易。它既克服了传统的流程图不能清晰表现程序结构的缺点,又不像N-S图那样受到把全部程序约束在一个方框内的限制,这就是其优势所在。

二、PAD图的基本符号

详细设计的工具——PAD图[通俗易懂]

(a) 顺序;(b) 选择;(c) CASE多分支;(d) WHILE型循环; (e) UNTIL型循环;(f) 语句标号;(g) 定义 图5.6 盒图(N-S图)

三、PAD图的优点

  PAD图的优点表现在如下六个方面。      

(1)使用PAD符号所设计出来的程序必然是结构化程序。      

(2)PAD图所描绘的程序结构十分清晰。图5.6中最左面的竖线是程序的主线,即第一层结构。(3)随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。PAD图中竖线的总条数就是程序的层次数。

(4)用PAD图表现程序逻辑,易读、易懂、易记。PAD图是二维树形结构的图形,程序从图中最左竖线上端的结点开始执行,自上而下,从左向右顺序执行,遍历所有结点。容易将PAD图转换成高级语言源程序,这种转换可用软件工具自动完成,从而可省去人工编码的工作,有利于提高软件可靠性和软件生产率。

(5)既可用于表示程序逻辑,也可用于描绘数据结构。

(6)PAD图的符号支持自顶向下、逐步求精方法的使用。开始时设计者可以定义一个抽象的程序,随着设计工作的深入而使用def符号逐步增加细节,直至完成详细设计。如图5.7所示是一个使用def符号逐步细化的示例。

详细设计的工具——PAD图[通俗易懂]

(a) 初始的PAD图;(b) 使用def符号细化处理框P2 图5.7 使用def符号逐步细化

四、PAD图的应用

 1.请根据下列伪码画出对应的PAD图。

GET(a[1],a[2],...a[10]);
max=a[1];
max2=a[2];
FOR i=2 TO 10
IF a[i]>max
max2=max;
max=a[i];
ELSE
IF a[i]>max2
max2=a[i]
ENDIF
ENDIF
ENDFOR
PUT(max,max2)
END

详细设计的工具——PAD图[通俗易懂]

  2.请根据下列伪码画出对应的PAD图。

定义变量:i=7,S=0
DO WHILE i<=1000
IF(i被7整除)
THEN
S=S+i
输出:i
ENDIF
i=i+1
ENDDO
输出:S

详细设计的工具——PAD图[通俗易懂]

 3.将下列N-S图转换为PAD图

详细设计的工具——PAD图[通俗易懂]

详细设计的工具——PAD图[通俗易懂] 4.将下列N-S图转换为PAD图

 详细设计的工具——PAD图[通俗易懂]

详细设计的工具——PAD图[通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170266.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月13日 上午11:36
下一篇 2022年8月13日 上午11:46


相关推荐

  • CSS3透明属性opacity建议收藏

    例子:何问起效果查看效果:http://hovertree.com/hvtart/bjae/q3etb2qv.htm设置div元素的不透明级别:div{opacity:0.5;}opacity属

    2021年12月21日
    42
  • oracle casewhen多条件查询_oracle exists

    oracle casewhen多条件查询_oracle exists它们的用法和意义c语言有when吗?应该是WHILE;case后面所跟的是一个常量,可以是数字,字符。用于列举SWITCH()条件出现的情况,举例:intn,N;switch(n){case1:N++;case2:.selectcase语句在有多个可能的条件必须被检查时使用。与if语句不同,selectcase语句在找到匹配的case表达式并执行了case表达式和…

    2025年9月21日
    9
  • Python——ZipFile操作压缩文件[通俗易懂]

    Python——ZipFile操作压缩文件[通俗易懂]python3中zipfile模块用法zipfile是python里用来做zip格式编码的压缩和解压缩的,由于是很常见的zip格式,所以这个模块使用频率也是比较高的,在这里对zipfile的使用方法做一些记录。即方便自己也方便别人。zipfile里有两个非常常用的class,分别是ZipFile和ZipInfo,在绝大多数的情况下,我们只需要使用这两个class就可以了。…

    2025年12月15日
    6
  • 电脑弹出当前页面的脚本发生错误_360当前页面的脚本发生错误

    电脑弹出当前页面的脚本发生错误_360当前页面的脚本发生错误笔者Windows版本:Windows8Enterprise64位(DirectX11)Windows有一天忽然开始报“脚本错误当前页面的脚本发生错误”警告窗口:不管点“是”还是“否”,电脑使用一段时间以后还是会弹这个烦人的框。按照搜索来的解决办法,禁用IE的脚本调试选项:不起作用,还是会持续报以上警报。即便是重启电脑以后依然会如此。这…

    2022年10月21日
    3
  • python分苹果问题_给大家分享一个「Python算法题」分苹果

    python分苹果问题_给大家分享一个「Python算法题」分苹果今天刷到一道算法题,分享一下果园里有堆苹果,N(1<N<9)只熊来分。第一只熊把这堆苹果平均分为N份,多了一个,它把多的一个扔了,拿走了一份。第二只熊把剩下的苹果又平均分成N份,又多了一个,它同样把多的一个扔了,拿走了一份,第三、第四直到第N只熊都是这么做的,问果园里原来最少有多少个苹果?可以先尝试一下再往下看(N=5的时候,答案是3121)。先简单分析一下这道题目,假设当第k个熊取完之后还有M个…

    2022年10月10日
    5
  • Java学习之面向对象篇

    Java学习之面向对象篇0X00前言前面讲了java的一些基本语法,这里就来讲讲java的核心思想,面向对象。0X01面向对象概念Java语言是一种面向对象的程序设计语言,而面向对象思想是

    2021年12月11日
    72

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号