第5章+详细设计(1).ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序中基本的逻辑关系只有顺序、选择和重复3类,下面用Jackson图分别举例表示。 1. 顺序结构 5.4.1 Jackson图(I) 图6.8 A由B、C、D 3个元素顺序组成 2. 选择结构 选择结构的数据包含两个或多个数据元素,每次使用这个数据时按一定条件从这些数据元素中选择一个。 图6.9 根据条件A是B或C或D中的某一个 5.4.1 Jackson图(II) 3. 重复结构 重复结构的数据,根据使用时的条件由一个数据元素出现零次或多次构成。 图6.10 A由B出现N次(N≥0)组成 5.4.1 Jackson图(III) Jackson图有下述优点: (1)便于表示层次结构,而且是对结构进行自顶向下分解的有力工具; (2)形象直观可读性好; (3)既能表示数据结构也能表示程序结构(因为结构程序设计也只使用上述3种基本控制结构)。 正因为如此,可轻松实现由数据结构导出程序结构 5.4.2 改进的Jackson图(I) 图6.11 改进的Jackson图 顺序结构 选择结构,i为分支条件编号 可选结构 重复结构,结束条件编号为i Jackson图实质上是对层次方框图(是描绘数据结构的形式化工具)的一种精化。Jackson图和描绘软件结构的层次图形式相当类似,但是含义却很不相同。层次图表现的是调用关系;而Jackson图表现的是组成关系。 5.4.2 改进的Jackson图(II) (1) 保持一致性。 (2) 提供有意义的反馈。 (3) 在执行有较大破坏性的动作之前要求用户确认。 (4)允许取消绝大多数操作。 (5) 减少在两次操作之间必须记忆的信息量。 5.2.2.1 一般交互指南 (1)只显示与当前内容有关的信息。 (2)窗口显示的一致性。 (3)产生有意义的出错信息。 (4)必要时,用图形化的方式显示信息。 5.2.2.2 信息显示指南 (1)尽量减少用户的输入动作,下拉框就是一个很好的选择。 (2)允许编辑。 (3)重要操作提示确认。 (4)交互的方式应该灵活,允许用户选择喜欢的输入方式。 (5)提示输入的格式和范围。 5.2.2.3 数据输入指南 5.3.1 程序流程图 5.3.2 盒图(N-S图) 5.3.3 PAD图 5.3.4 判定表 5.3.5 判定树 5.3.6 过程设计语言 5.3 过程设计的工具 5.3.1 程序流程图(I) 6.3.1 程序流程图(III) 程序流程图的主要缺点如下: (1) 程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。 (2) 程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制。 (3) 程序流程图不易表示数据结构。 5.3.1 程序流程图(III) 出于要有一种不允许违背结构程序设计精神的图形工具的考虑,Nassi和Shneiderman提出了盒图,又称为N-S图。 5.3.2 盒图(N-S图)(I) 6.3.2 盒图(N-S图)(I) 5.3.2 盒图(N-S图)(II) 嵌套的表示 盒图的特点: (1) 功能域明确,可以从盒图上一眼就看出来。 (2) 不可能任意转移控制。 (3) 很容易确定局部和全程数据的作用域。 (4) 很容易表现嵌套关系,也可以表示模块的层次结构。 盒图没有箭头,因此不允许随意转移控制。这对我们结构化的思考方式很有帮助。 5.3.2 盒图(N-S图)(III) 5.3.3 PAD图(I) PAD示例 5.3.3 PAD图(II) 对应于增量型循环结构 for i := n1 to n2 step n3 do 在PAD中有相应的循环控制结构 5.3.3 PAD图(III) PAD图的主要优点: (1) PAD图所描绘的程序结构十分清晰。用PAD图表现程序逻辑,易读、易懂、易记。 (2) PAD图易于向高级语言转换。 (3)即可用于表示程序逻辑,也可用于描绘数据结构。 (4) PAD图的符号支持自顶向下、逐步求精方法的使用。 5.3.3 PAD图(IV) 前面已经介绍了程序流程图、盒图以及PAD图,下面以计算应发工资模块为例,用上述三种图形工具分别来设计。 开始 在工资档案中读一条记录 文件结束? 计算各项基本数据之和并存入pay num=当前工资号 在奖金发放表中查找职工号与num相同的记录 找到否? 计算各项奖金之和并存入bonus 应发工资=pay+bonus 读下一条记录 结束 显示错误 在工资档案中读一条记录 文件结束吗? 计算工资各项基本数据之和存入pay num=当前职工号 在奖金表中查职工号与num相同的记录 找到否? T F 显示错误 计算

文档评论(0)

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

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

1亿VIP精品文档

相关文档