(完整word版)软件工程第六章答案_第1页
(完整word版)软件工程第六章答案_第2页
(完整word版)软件工程第六章答案_第3页
(完整word版)软件工程第六章答案_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、作业4参考答案1 .假设只有SEQUENCE 和DO_WHILE 两种控制结构,怎样利用它们完成IF_THEN_ELSE 操作?答:转化如下:K = 1DO WHILE (条件.AND. K.EQ.1)程序块1K=K+1END DODO WHILE ( (.NOT.条件).AND. K.EQ.1)程序块2K=K+1END DO2 .假设允许使用SEQUENCE 和IF_THEN_ELSE 两种控制结构,怎样利用它们完成DO_WHILE 操作?答:转化如下;label:IF (条件)THEN程序块GOTO labelELSE程序块END IF3.画出下列伪码程序的程序流程图和盒图:STARTIF

2、 p THENWHILE q DOfEND DOELSEBLOCKgnEND BLOCKEND IFSTOP答:(1)流程图如图4-1所示:开始厂q 循环 WHILE pq循环停止VJ图4-1从伪码变成的程序流程图(2)该程序的盒图如图4-2所示:pTqgnf图4-2从伪码变成的程序盒图4 下图给出的程序流程图代表一个非结构化的程序,请问:(1) 为什么说它是非结构化的?(2) 设计一个等价的结构化程序。(3) 在(2)题的设计中你使用附加的标志变量flag吗?若没用,请再设计一个使用flag的程序;若用了,再设计一个不用flag的程序。答:(1)通常所说的结构化程序, 是按照狭义的结构程序的

3、定义衡量, 符合定义规定的程序。 图示的程序的循环控制结构有两个出口, 显然不符合狭义的结构程序的定义, 因此是非结构 化的程序。(2)使用附加的标志变量 flag,至少有两种方法可以把该程序改造为等价的结构化程序, 图4-3描绘了等价的结构化程序的盒图。flag=TRUEp AND flaggFq/Tflag=FALSEflag=TRUE'、PFzflag=FALSEg(NOT q)OR(NOT flag)(3)不使用(a)解法1( b)解法2图4-3与该图等价的结构化程序(用 flag )5 研究下面的伪代码程序:LOOP : Set I to (START+FINISH)/2If

4、 TABLE(I)=ITEM goto FOUNDIf TABLE(I)<ITEM Set START to (I+1)If TABLE(I)>ITEM Set FINISH to (I-1)If (FINISH-START )>1 goto LOOPIf TABLE(START)=ITEM goto FOUNDIf TABLE(FINISH)=ITEM goto FOUNDSet FLAG to 0Goto DONEFOUND: Set FLAG to 1DONE:Exit(1) 画出程序流程图。(2) 程序是结构化吗?说明理由。(3) 若程序是非结构化的,设计一个等价的结

5、构化程序并且画出流程图。此程序的功能是什么?它完成预定功能有什么隐含的前提条件。 答:(1)该程序流程图如下:(2) 该程序不是结构化的,结构化的程序只有一个入口和一个出口,而该程序的流程途中 有两个出口。(3) 等价的结构化程序的流程图如下:6.用Ashcroft_Manna技术可以将非结构化的程序转化为结构化程序,图6.19是一个转换的例子。能否从这个例子总结出 Ashcroft_Manna技术的一些基本方法?进一步简化6.佃(b)给出的结构化设计。答:(1)从这个例子中看出,Ashcroft_Ma nna技术的基本方法是,当待改造的序含有嵌套 的非结构化的IF语句时,改造后的程序中增加 DO-CAS语句和DO-UNTIL语句,并增加一个辅 助变量I ,1的初始值为1。最外层的IF语句在I= 1时执行,执行完这个IF语句后把I赋值为 随后应该执行的内层IF语句所对应的CAS标号值。DO-CAS语句的最大分支数(可执行的最 大标号值)等于IF语句的个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论