《软件工程》第六章 详细设计 作业

1.详细设计的目的/strong>

      详细设计的根本目标是确定应该怎样具体地实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。

2.详细设计的基本任务是什么哪几种描述方法/strong>

   1)详细设计阶段的任务是要设计出程序的“蓝图”,以后程序员将根据这个“蓝图”写出实际的程序代码。

   2)有如下六种描述方法——

     ·程序流程图:也称为程序框图,使用五种基本控制结构;

     ·盒图(N—S图):出于要有一种不允许违背结构程序设计精神的图形工具考虑提出;

     ·PAD图:即问题分析图,用二维树形结构的图来表示程序的控制流,面向高级程序设计语言;

     ·判定表:能清晰表示复杂的条件组合与应做的动作之间的对应关系,包含条件、动作、条件组合及对应动作;

     ·判定树:是判定表的变种,形式简单但简洁性较低;

     ·过程设计语言(PDL):是一种用于描述功能模块的算法设计和加工细节的语言,是一种伪码。

3.下面是一段用Seidel迭代法求解线性方程组的程序。其中A[n,n]是方程组的系数矩阵。B[n]是方程组的右端项,X[n]是方程组的解向量。eps是控制迭代精度的较小实数。imax是控制迭代的最大次数。flag是标志,值为0时表示迭代不收敛,值为l时表示迭代收敛。

画出该C伪码的程序流程图,N-S图,程序流图,并计算程序的McCabe环形复杂度。

程序流程图:

《软件工程》第六章 详细设计 作业

 

N—S图:

《软件工程》第六章 详细设计 作业

程序流图:

《软件工程》第六章 详细设计 作业

     V(G) = 7 + 1 = 8

4.画出下列伪码程序的程序流程图和盒图:

程序流程图:

《软件工程》第六章 详细设计 作业

 

盒图:

《软件工程》第六章 详细设计 作业

 

5.画出下列伪码程序的流图,计算它的环形复杂度。这个程序的逻辑有什么问题吗/strong>

程序流程图:

  

《软件工程》第六章 详细设计 作业

流图:

《软件工程》第六章 详细设计 作业

     V(G) = 5 + 1 = 6

     逻辑问题:

          Z值不明确且while循环内未改变,造成while内语句不执行或死循环;

          Y


               初学者手写作业,对问题叙述较为简单浅显,仅作为学习过程记录。

               欢迎指正与讨论!

来源:AnjaVon

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年2月28日
下一篇 2020年3月1日

相关推荐