- 25
- 0
- 约1.58千字
- 约 7页
- 2020-10-05 发布于河北
- 举报
.
第十六套 习 题
1、详细设计的基本任务是什么,有哪几种描述方法 ?
答:详细设计的基本任务包括:
1、为每个模块进行详细的算法设计
2、为模块内的数据结构进行设计
3、对数据库进行物理设计
4、其他设计
5、编写详细设计说明书
6、评审
详细设计的描述方法有图形、表格和语言,其中图形常用结构化程序流程图、盒图和
PAD( 问题分析图 )为描述工具,语言常用过程设计语言 (PDL) 来作为工具。
2、结构化程序设计的基本要点是什么 ?
答:主要有三个:
(1)采用自顶向下、逐步求精的程序设计方法
(2)使用三种基本控制结构构造程序。任何程序都可以由顺序、选择、重复 (循环 )
三种基本控制结构构造,这三种基本结构的共同点是单入口、单出口。
(3)主程序员组的组织形式。
3、简述 Jackson方法的设计步骤。
答: Jackson方法的设计步骤如下:
(1)分析并确定输入数据和输出数据的逻辑结构,并用 Jackson结构图表示这些数据结
构。
(2)找出输入数据结构和输出数据结构中有对应关系的数据单元。
(3)按一定的规则由输入、输出的数据结构导出程序结构。
(4)列出基本操作与条件,并把它们分配到程序结构图的适当位置。
(5)用伪码写出程序。
.
.
4、请使用流程图、 PAD 图和 PDL 语言描述下列程序的算法。
(1)在数据 A(1) ~ A(10) 中求最大数和次大数。
解:如图所示:
PDL 语言描述:
GET(a[1],a[2],...a[10])
max=a[1];
.
.
max2=a[2];
FOR i=2 TO 10
IF a[i]max
max2=max;
max=a[i];
ELSE
IF a[i]max2
max2=a[i];
ENDIF
ENDIF
ENDFOR
PUT(max,max2)
END
(2)输入三个正整数作为边长, 判断该三条边构成的三角形是等边、 等腰还是一般三角
形。
解:如图:
.
.
PDL 语言描述如下:
GET(a,b,c)
IF (a+bc and b+ca and c+ab)
IF (a=b)
IF (a=c)
PUT(等边三角形 )
ELSE
PUT(等腰三角形 )
ENDIF
ELSE
IF(a=c)
PUT(等腰三角形 )
ELSE
IF (b=c)
PUT(等腰三角形 )
ELSE
.
.
PUT(一般三角形 )
ENDIF
ENDIF
ENDIF
ELSE
PUT (这不是一个三角形 )
ENDIF
5、用 PAD 图描述下面问题的控制结构。
有一个表 A(1)、A(2) 、...A(n) ,按递增顺序排列。给定一个 Key 值,在表中用折半法查找。若找到,将表位置 i 送入 x,否则将零送到 x,同时将 key 值插入表中。
算法:
(1)置初值 H=1( 表头 ),T=N( 表尾 )。
(2)置 i=[(H+T)/2]( 取整 )。
(3)若 Key=A(i) ,则找到 ,i 送到 x;若 KeyA(i) ,则 Key 在表的后半部分, i+1 送入 H; 若 KeyA(i), 则 Key 在表的前半部分, i-1 送入 T,重复第 2 步查找直到 HT 为止。
(4)查不到时,将 A(i),...A(N) 移到 A(i+1)...A(N+1),Key 值送入 A(i) 中。
解:如图所示:
.
.
6、一个正文文件由若干记录组成,每个记录是一个字符串,要求统计每个记录中空
格字符的个数及文件中空格字符的总个数。 要求输出数据格式是每复制一行字符串后, 另
起一行打印出这个字符串中的空格数, 最后打印出文件空格的总个数, 用 Jackson 方法设
计该程序结构。
.
.
.
原创力文档

文档评论(0)