第12讲 详细设计.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * N-S图的嵌套定义形式 a b 条 件 1 T F Case Xi, i=2,3,4 X2 X3 X4 当条件3成立 条 件 2 直到条件4成立 直 到 条 件 成立 c d e f g h i j 顺序结构 if选择结构 case多分支选择结构 Do-while循环 Do-until循环 F T T F Do-until循环 练习:请画出图中红色框所对应的N-S图 N-S图的特点 优点 功能域(一个特定控制结构的作用域)明确,可以从盒图上一眼就看出来。 没有箭头不允许随意转移控制,不可能任意转移控制。 很容易确定局部和全程数据的作用域。 很容易表现嵌套关系,也可以表示模块的层次结构。 缺点 随着程序内嵌套的层数增多时,内层方框越来越小,会增加画图的难度,影响清晰度。 例2、判定y是否为润年(能被4整除却不能被100整除或能被400整除的年份是闰年) 输入y y不能被4整除 N Y y不能被400整除 结束 输出是润年 输出非润年 Y不能被100整除 N Y N Y 输出是闰年 输出非闰年 闽南科技学院计算机系 练习: 计算S=1-1/2+1/3-1/4…-1/100 S=0 i=1 Fuhao=1 i=100 S=S+Fuhao/i Fuhao=-Fuhao 输出S 3 过程设计工具: PAD图 PAD(Problem Analysis Diagram)问题分析图 日立公司中央研究所在1973年研究开发 使用二维树形结构图描述程序的逻辑 PAD图的优点: 程序一定是结构化的,PAD图中竖线的总条数就是程序中的层次数,既表示程序逻辑,也描绘数据结构 过程设计工具 A B Sequential While P S Until P S Loops P A B THEN ELSE Selective P = A1 A2 Case An 1 2 n … Statement Index def Definition x2 1 c Do-While x3 2 3 d e k : 例:N-S图与PAD的转换 过程设计工具 def k x2 d e 1 2 3 While x3 c x4 T F Do-Until x5 i g h f k x1 T F b Do-Until x6 a j 开始 ? 结束 ? a j Until x5 i Until x6 b x1 k f x4 g h 练习: 下图中转化为PAD图 PAD图的主要优点如下: (1)程序结构清晰,结构化程度高。 (2)支持自顶向下,逐步求精的设计方法。 (3)既可以表示程序逻辑,也可以描绘数据结构。 (4)用PAD图表现程序逻辑,易读易写,使用方便。 (5)容易转换成高级语言源程序,也可用软件工具实现自动转换。 使用PAD图提供的定义功能 来逐步求精的例子 FIRST=K[I] SECOND=0 I:=2 to N K[I]FIRST SECOND =FIRST FIRST=K[I] SECOND =K[I] PAD图 PAD图转换成代码举例 K[I] SECOND BEGIN FIRST:=K[1]; SECOND:=0; BEGIN FOR I:=2 TO N DO BEGIN IF K[I]SECOND THEN BEGIN IF K[I]FIRST THEN BEGIN SECOND:=FIRST; FIRST:=K[I]; ELSE SECOND:=K[I]; END END END END 4 过程设计工具:判定表 判定表能够清晰地表示复杂的条件组合与所产生的动作之前的关系。 一张判定表由四部分组成: 左上部列出所有的条件Ⅰ 左下部是所有可能的操作Ⅲ 右上部是各种条件的组合矩阵Ⅱ 右下部是每种条件组合对应的动作Ⅳ 4 判定表举例 例: 某航

文档评论(0)

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

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

1亿VIP精品文档

相关文档