CHAP04结构化设计2详细设计.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内容 4.1 详细设计概述 4.2 详细设计工具 4.2.1 程序流程图 4.2.2 盒图(N-S图) 4.2.3 PAD图 4.2.4 判定表 4.2.5 判定树 4.3 程序复杂度的度量 4.1 详细设计概述 详细设计 又叫过程设计,用伪代码、图或表等工具描绘软件各个模块的算法流程。 要解决的是每个模块如何实现的问题,由系统设计员或有经验的高级程序员完成。实质性地任务就是详细描述程序的算法,包括程序的处理过程与计算方法,用以作为一般程序员编码的依据 设计好的标准是:逻辑正确、效率高、易读易懂。 4.2 详细设计工具1——程序流程图 【程序流程图】 又称为框图,是一种用于表达问题求解过程控制流的有效方法,是表达结构化程序的有力工具。 也是早期使用最广泛的算法描述方法,也是最容易引起误解和受到争议的方法。 结构化程序:三种基本控制结构 【程序流程图】 符号 案例1 求一组数中的最大数 方法:输入一组数,找出最大数,然后输出最大数。其中找出最大数的过程可以描述为:第一个起,如果新元素>最大数,则最大数=新元素,否则继续往下找。 案例2(练习) 绘制【登陆】的程序流程图 输入正确,进入系统 输入错误,重新输入或者退出系统,最多输入三次。 优点 对控制流程的描绘直观,便于掌握 缺点 程序流程图本质上不是逐步求精的好工具,它使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。 用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计精神,随意转移控制 现状 随着软件工程规范的形成,人们主张废弃这种方法,但由于它历史悠久,为最广泛的人所熟悉。至今在许多程序语言的教科书中仍在使用。 4.2 详细设计工具2——盒图(N-S图) 【盒图】 Nassi和Shneiderman在70年代提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图(Box-Diagram),也叫N-S图。 【盒图】 符号 案例:求一组数中的最大数 优点 没有箭头,也就不允许控制流随意的转移,可以严格按照结构化进行程序设计。 程序中控制结构的功能域(即一个特定控制结构的作用范围)非常明确 3种基本控制结构的组合关系很容易表达 缺点 当算法特别复杂时,尤其是嵌套层数较多时,内层方框越来越小,不仅增加了画图的难度,还会影响图形的清晰度。即复杂情况下,难以布局。 4.2 详细设计工具3——PAD图 【PAD图】 问题分析图PAD(Problem Analysis Diagram),是二十世纪七十年代日立公司提出并发展的另一种图形工具。它采用了二维树型结构的图形符号来表示程序的控制结构。 PAD图的符号 PAD图 所描绘的程序结构十分清晰。 图中最左面的竖线是程序的主线,即第一层结构。 随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。 PAD图中竖线的总条数就是程序的层次数 案例1 求一组数中的最大数 【PAD图】优点 PAD图表达的程序结构符合结构化程序设计的思想,体现了自顶向下、逐步求精的算法构造原则。 PAD图是二维树形结构的图形,程序从图中最左竖线上端的结点开始执行,自上而下、从左向右顺序执行,遍历所有结点 用PAD图表现程序逻辑,结构清晰,易读、易懂 容易将PAD图转换成高级语言,有可用的转换工具。 综合案例1 综合案例(流程图、NS图、PAD图) 流程图如右图所示,分别画出N-S图和PAD图 4.2 详细设计工具4——判定表 在许多软件应用问题中,常会遇到根据多个条件的复杂组合来选择适当的动作。此时,采用程序流程图、盒图、PAD图或过程定义语言(PDL)都很难做到简单清晰地描述条件组合与处理动作之间的因果关系。 判定表是能够清晰直观地表达这种复杂条件组合与动作之间关系的一种描述工具。 一组条件取值的组合?加工逻辑的动作。 【例1】学位证、结业证、肄业证授予判定表 【例2】某单位工资制度规定如下: ⒈技术干部的职务工资标准为(月): 技术员50元 助理工程师70元 工程师90元 高级工程师120元 工龄10年并受聘高级工程师的职务工资为140元 ⒉工龄补助 10年以下加10元 10~20年加20元 20年以上加30元 4.2 详细设计工具4——判定树 【判定树】 判定树是判定表的另一种形式,它使用灵活的树型层次结构图的形式来表达复杂的条件组合与动作之间的对应关系。 判定树的优点是比较直观,便于写程序。 判定树是判定表的变形; 优点:比判定表更加直观,易于理解和使用。 【例】某单位工资制度规定如下: ⒈技术干部的职务工资标准为(月): 技术员50元 助理工程师70元 工程师90元 高级工程师120元 工龄10年并受聘高级工程师,职务工资140元 ⒉工龄补助 10年以下加10元 10~20年加2

文档评论(0)

xingyuxiaxiang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档