文档详情

软件工程导论[第5版]课后习题答案.ppt

发布:2017-03-21约1.62万字共98页下载文档
文本预览下载声明
重庆工学院计算机科学与工程学院 李梁 软件工程 作业解答 数据结构的描述 符 号 含 义 举 例 = 被定义为 + 与 x = a+b [...,...] 或 [...|...] 或 x = [a , b],x = [a | b] { ... }或 m{...}n 重复 x = {a}, x = 3{a}8 (...) 可选 x = (a) “...” 基本数据元素 x = “a” .. 连结符 x = 1..9    P104:3 用面向数据流的方法设计下列系统的软件结构 (1)储蓄系统2-2 (2)机票预定系统2-3 为了方便旅客,某航空公司拟开发一个机票预定系统。旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入该系统,系统为旅客安排航班,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无误即印出机票给顾客 (2)患者监护系统2-4    P104:4 美国某大学有200名教师,校方与教师工会刚刚签订一项协议。按照协议,所有年工资超过$26000(含$26000 )的教师工资将保持不变,年工资少于$26000的教师将增加工资,所增加工资数额按下述方法计算:给每位教师所赡养的人(包括教师本人)每年补助$100,此外,教师有一年工龄每年再多补助¥50,但是,增加后的年工资总额不能多于$26000。 教师工资档案存储在行政办公室的磁带上,档案中有目前的年工资、赡养的人数、雇佣日期等信息。需要写一个程序计算并印出每名教师的原工资和调整后的新工资。 要求:(1)画出此系统的数据流图;(2)写出需求说明; (3)设计上述的工资调整程序(要求用HIPO图描绘设计结果),设计时分别采用两种算法,并比较两种算法的优缺点: (a)搜索工资档案数据,找出年工资少于$26000的人,计算新工资,校核是否超过$26000,存储新工资,印出新旧工资对照表; (b)把工资档案数据按工资从最低到最高的次序排序,当工资数额超过$26000时即停止排序,计算新工资,校核是否超过限额,存储新工资,印出结果。 (4)你所画出的数据流图适应用那种算法?                P131:3 画出下列伪码程序的程序流程图和盒图 START IF p THEN WHILE q DO f END DO ELSE BLOCK g n END BLOCK END IF STOP       P131:4 下图给出的程序流程图代表一个非结构化的程序,请问: (1)为什么说它是非结构化的? (2)设计一个等价的结构化程序。 (3)在(2)题的设计中你使用附加的标志变量flag吗?若没用,请再设计一个使用flag的程序;若用了,再设计一个不用flag的程序    (1)通常所说的结构化程序,是按照狭义的结构程序的定义衡量,符合定义规定的程序。图示的程序的循环控制结构有两个出口,显然不符合狭义的结构程序的定义,因此是非结构化的程序。    (2)使用附加的标志变量flag,至少有两种方法可以把该程序改造为等价的结构化程序,图示盒图描绘了等价的结构化程序。    (3)不使用flag把该程序改造为等价的结构化程序的方法如图所示。    C EXAMPLE LOOP:DO WHILE X0 A=B+1 IF A10 THEN X=A ELSE Y=Z END IF IF Y5 THEN PRINT X,Y ELSE IF Y=2 THEN GOTO LOOP ELSE C=3 END IF END IF    P131:8 画出下列伪码程序的流图,计算它的环形复杂度。你觉得这个程序的逻辑有什么问题吗? G=H+R END DO IF F0 THEN PRINT G ELSE PRINT K END IF STOP 作业及解答(第6章) Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Co
显示全部
相似文档