第4-5-6章作业.pptVIP

  • 156
  • 0
  • 约2.36千字
  • 约 27页
  • 2018-05-27 发布于江西
  • 举报
第4-5-6章作业

习题 4-2 在什么情况下应该使用形式化说明技术?使用形式化说明技术时应遵守哪些准则? 答:系统需要精确建模的时候,非形式化说明时容易出现矛盾,二义,含糊,不完整的时候。 形式化说明技术应遵守的准则: (1) 应该选用适当的表示方法。 (2) 应该形式化,但不要过分形式化。 (3) 应该估算成本。 (4) 应该有形式化方法顾问随时提供咨询。 (5) 不应该放弃传统的开发方法。 (6) 应该建立详尽的文档。 (7) 不应该放弃质量标准。 (8) 不应该盲目依赖形式化方法。 (9) 应该测试、测试再测试。 (10) 应该重用。 4-3 一个浮点二进制数的构成是:一个可选的符号(+或-),后跟一个或多个二进制位,再跟上一个字符E,再加上另一个可选符号(+或-)及一个或多个二进制位。例如,下列的字符串都是浮点二进制数: 110101E-101 -100111E11101 +1E0 更形式化地,浮点二进制数定义如下: 〈floatingpoint binary〉∷=[〈sign〉]〈bitstring〉E[〈sign〉]〈bitstring〉 〈sign〉∷=+|- 〈bitstring〉∷=〈bit〉[〈bitstring〉] 〈bit〉∷=0|1 其中, 符号∷=表示定义为; 符号[...]表示可选项; 符号a|b表示a或b。 假设有这样一个有穷状态机:以一串字符为输入,判断字符串中是否含有合法的浮点二进制数。试对这个有穷状态机进行规格说明。 复习有穷自动机: 一个保险箱上装了一个复合锁,锁有三个位置,分别标记为1、2、3,转盘可向左(L)或向右(R)转动。这样,在任意时刻转盘都有6种可能的运动,即1L、1R、2L、2R、3L和3R。保险箱的组合密码是1L、3R、2L,转盘的任何其他运动都将引起报警。图4.1描绘了保险箱的状态转换情况。 Asdf 习题 5-3 用面向数据流的方法设计下列系统的软件结构: 储蓄系统(参见习题2第2题); 数据流图: (2)机票预定系统2-3 为了方便旅客,某航空公司拟开发一个机票预定系统。旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入该系统,系统为旅客安排航班,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无误即印出机票给顾客 习题 6-1 假设只有SEQUENCE和DO-WHILE两种控制结构,怎样利用它们完成IF-THEN-ELSE操作? 6-2 假设只允许使用SEQUENCE和IF-THEN-ELSE两种控制结构,怎样利用它们完成DO-WHILE操作? 6-3 画出下列伪码程序的程序流程图和盒图: START IF p THEN WHILE q DO f END DO ELSE BLOCK g n END BLOCK END IF STOP 6-4 图6.18给出的程序流程图代表一个非结构化的程序,请问: (1) 为什么说它是非结构化的? (2) 设计一个等价的结构化程序。 图6.18 一个非结构化程序 答: 图示的程序的循环控制结构有两个出口,显然不符合狭义的结构程序的定义,因此是非结构化的程序。 (2) 使用附加的标志变量flag,至少有两种方法可以把该程序改造为等价的结构化程序,图示盒图描绘了等价的结构化程序。 (2) 使用附加的标志变量flag,至少有两种方法可以把该程序改造为等价的结构化程序,图示盒图描绘了等价的结构化程序。 (2) 使用附加的标志变量flag,至少有两种方法可以把该程序改造为等价的结构化程序,图示盒图描绘了等价的结构化程序。 (2) (3) 在(2)题的设计中你使用附加的标志变量flag了吗?若没用,请再设计一个使用flag的程序;若用了,再设计一个不用flag的程序。 6-5 研究下面的伪码程序(见书131页): 要求: (1) 画出程序流程图。 (2) 程序是结构化的吗?说明理由。 (3) 若程序是非结构化的,请设计一个等价的结构化程序并且画出程序流程图。 (4) 此程序的功能是什么?它完成预定功能有什么隐含的前提条件吗? 单击此处编辑母版标题样式 单击此处编辑母版副标题样式 1 录入 存款单 储户 2 录入 取款单 业务员 3 更新 数据库 4 更新 数据库 存款信息 D1 取款信息 D2 储户信息 D1 6.1 计算 利息 6.2 打印 利息单 6.2 打印 存款单 储户 事务 事务 存款信息 取款信息 存款信息 取款信息 取款信息 存款信息 存款单 利息信息 利息单 储户信息 ⊕ 1.1 录入 旅客信息 旅行社 订票信息

文档评论(0)

1亿VIP精品文档

相关文档