二、详细设计的方法
n 采用自顶向下、逐步求精的程序设计方法 n 使用三种基本控制结构构造程序
(顺序、选择、重复) n 主程序员的组织形式
结构化程序设计技术是一种设计程序的技 术,它采用自顶向下逐步求精的设计方法 和单入口单出口的控制结构,并且只包含 顺序、选择和循环三种控制结构。
详细设计的方法
n 使用结构程序设计技术的好处: n 1)提高软件开发工程的成功率和生产率; n 2)系统有清晰的层次结构,容易阅读理解; n 3)单入口单出口的控制结构,容易诊断纠正; n 4)模块化可以使得软件可以重用;
PAD图的符号
PAD图的例子
PAD图
nPAD图的实例见p191页
n特点 : 结构清晰 , 支持结构化的程 计方法,有利于自动生成程序。
例子:
n 输入三个正整数作为边长,判断该三条边 构成的三角形是等边、等腰还是一般三角 形。请画出该程序的流程图、 N-S图、 PAD 图。
例子:
n
例子:
n
例子:
2. N-S图
nN-S图是由Nassi和Shneiderman提出 的一种符合结构化程序设计原则的图 形描述工具。也叫盒图。
N-S图
N-S图特点
(1)功能域(即某一个特定控制结构的作用域)有 明确的规定,并且可以很直观地从N-S图上看出 来; (2)它的控制转移不能任意规定,必须遵守结构化 程序设计的要求;
n
思考:
n 在数据A(1)~A(n)中求最大数和次大数.。
n 在数据A(1)~A(n)中求前m个最大的数。
4. 判定表
n当算法中包含多重条件选择时,用程 序流程图、 N-S图或PAD都不能清晰地 描述。用判定表确可以清晰表达复杂 条件与应做动作之间的关系。