- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《软件工程-程序流程图》.pdf
软件工程-程序流程图
2009年10月15日 星期四 下午 12:06
4.5.1程序流程图
程序流程图独立于任何一种程序设计语言,比较直观、清晰,易于学习
掌握。但流程图也存在一些严重的缺点。例如流程图所使用的符号不够规范,
常常使用一些习惯性用法。特别是表示程序控制流程的箭头可以不受任何约
束,随意转移控制。这些现象显然是与软件工程化的要求相背离的。为了消
除这些缺点,应对流程图所使用的符号做出严格的定义,不允许人们随心所
欲地画出各种不规范的流程图。例如,为使用流程图描述结构化程序,必须
限制流程图只能使用图3.25所给出的五种基本控制结构。
图4.3 流程图的基本控制结构
任何复杂的程序流程图都应由这五种基本控制结构组合或嵌套而成。作为上述五种控制结构相互组合和嵌
套的实例,图示给出一个程序的流程图。图中增加了一些虚线构成的框,目的是便于理解控制结构的嵌套
关系。显然,这个流程图所描述的程序是结构化的。
4.5.2 N-S图
Nassi和Shneiderman 提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图,也叫做N-S
图。为表示五种基本控制结构,在N-S图中规定了五种图形构件。参看图4.5。
为说明N-S图的使用,仍用图4.4给出的实例,将它用如图4.6所示的N-S图表示。
如前所述,任何一个N-S图,都是前面介绍的五种基本控制结构相互组合与嵌套的结果。当问题
很复杂时,N-S图可能很大。
图4.5 N-S图的五种基本控制结构
图4.6 N-S图的实例
4.5.3 PAD
PAD是Problem Analysis Diagram的缩写,它是日本日立公司提出,由程序流程图演化来的,用结构化程
序设计思想表现程序逻辑结构的图形工具。现在已为ISO认可。
PAD也设置了五种基本控制结构的图式,并允许递归使用。
图4.7 PAD的基本控制结构
做为PAD应用的实例,图4.8给出了图4.4程序的PAD表示。PAD所描述程序的层次关系表现在纵线上。每
条纵线表示了一个层次。把PAD图从左到右展开。随着程序层次的增加,PAD逐渐向右展开。
PAD的执行顺序从最左主干线的上端的结点开始,自上而下依次执行。 每遇到判断或循环,就自左而右进
入下一层,从表示下一层的纵线上端开始执行,直到该纵线下端,再返回上一层的纵线的转入处。如此继
续,直到执行到主干线的下端为止。
图4.8 PAD实例
4.5.4 判定表
当算法中包含多重嵌套的条件选择时,用程序流程图、N-S图或PAD都不易清楚地描述。然而,判定表却能
清晰地表达复杂的条件组合与应做动作之间的对应关系。仍然使用图4.4的例子。为了能适应判定表条件
取值只能是T和F的情形,对原图稍微做了些改动,把多分支判断改为两分支判断,但整个图逻辑没有
改变。见图4.9。
与图3.31表示的流程图对应的判定表如图3.32所示。在表的右上半部分中列出所有条件,T表示该条
件取值为真,F表示该条件取值为假,空白表示这个条件无论取何值对动作的选择不产生影响。在判定
表右下半部分中列出所有的处理,画Y表示要做这个动作,空白表示不做这个动作。判定表右半部的每
一列实质上是一条规则,规定了与特定条件取值组合相对应的动作。
图4.9 不包含多分支结构的流程图实例
4.5.5 PDL(Program Design Language)
PDL是一种用于描述功能模块的算法设计和加工细节的语言。称为设计程序用语言。它是一种伪码。一般地,
伪码的语法规则分为外语法和内语法。外语法应当符合一般程序设计语言常用语句的语法规则;而内
语法可以用英语中一些简单的句子、短语和通用的数学符号,来描述程序应执行的功能。
使用PDL语言,可以做到逐步求精:从比较概括和抽象的PDL程序起,逐步写出更详细的更精确的描述。
PDL就是这样一种伪码。它具有严格的关键字外语法,用于定义控制结构
和数据结构,同时它的表示实际操作和条件的内语法又是灵活自由的,可
使用自然语言的词汇。下面举一个例子,来看PDL的使用。 从上例可以
看到,PDL
您可能关注的文档
- 《资本主义史【[法]米歇尔·博德】》.pdf
- 《资本主义消费文化的演变、媒体的作用和全球化》.pdf
- 《资本前瞻(16期)-96dpi跨页预览》.pdf
- 《资本寒冬下的移动医疗:盈利模式创新才能活下去》.pdf
- 《资本市场的混沌与秩序 埃德加.E.彼得斯(第二版)》.pdf
- 《资本战争-金钱游戏与投机泡沫的历史》.pdf
- 《资本战争——金钱游戏与投机泡沫的历史_ANSI》.pdf
- 《资本的游戏2》.pdf
- 《资本资产定价模型实证检验讲义》.pdf
- 《资本运营的财技》.pdf
- 2025江浙沪居民睡眠健康小调研报告.pdf
- 毕业论文的开题报告范文.docx
- 团委活动方案(拓展).docx
- 汽车智能驾驶行业深度报告:端到端与AI共振,智驾平权开启新时代.pdf
- 小核酸行业深度:技术平台和适应症不断验证,迎来销售和临床密集兑现期-华福证券-2025.3.31-65页.docx
- 医药生物行业医疗AI专题报告二多组学篇AI技术驱动精准诊断实现重要突破-25031440页.docx
- CXO行业系列报告三寒冬已过行业需求逐步回暖-25031430页.docx
- 全国租赁市场报告2025年3月_可搜索.pdf
- 玩具行业“情绪经济”专题:创新玩法+IP赋能,重新定义玩具-华鑫证券-2025.docx
- 医疗保健行业PCAB抑制剂药物深度报告抑酸药物市场空间广阔PCAB抑制剂大有可为-25.pdf
文档评论(0)