问答题


阅读以下技术说明,根据要求回答问题1~问题4。
[说明]
某汽车停车场欲建立一个信息系统,已经调查到的需求如下。
1.在停车场的入口和出口分别安装一个自动栏杆、一台停车卡打印机、一台读卡器和一个车辆通过传感器等,其示意图见如图3-21所示。


2.当汽车到达入口时,驾驶员按下停车卡打印机的按钮获取停车卡。当驾驶员拿走停车卡后,系统命令栏杆自动抬起;汽车通过入口后,入口处的传感器通知系统发出命令,栏杆自动放下。
3.在停车场内分布着若干个付款机器。驾驶员将在入口处获取的停车卡插入付款机器,并缴纳停车费。付清停车费之后,将获得一张出场卡,用于离开停车场。
4.当汽车到达出口时,驾驶员将出场卡插入出口处的读卡器。如果这张卡是有效的,系统命令栏杆自动抬起;汽车通过出口后,出口传感器通知系统发出命令,栏杆自动放下。若这张卡是无效的,系统不发出栏杆抬起命令而发出告警信号。
5.系统自动记录停车场内空闲的停车位的数量。若停车场当前没有车位,系统将在入口处显示“车位已满”信息。这时,停车卡打印机将不再出卡,只允许场内汽车出场。
根据上述描述,采用面向对象方法对其进行分析与设计,得到如表3-11所示的类/用例/状态列表,如图3-22所示的用例图,如图3-23所示的初始类图以及如图3-24所示的描述入口自动栏杆行为的UML状态图。

表3-11 类/用例/状态列表

用例名 说明 类名 说明 状态名 说明
Car entry 汽车进入停车场 CentralComputer 停车场信息系统 Idle 空闲状态,汽车可以进入停车场
Car exit 汽车离开停车场 PaymentMachine 付款机器 Disable 没有车位
Report Statistics 记录停车场的相关信息 CarPark 停车场,保存车位信息 Await Entry 等待汽车进入
Barrier 自动护栏 Await Ticket Take 等待打印停车卡
Car entry when full 没有车位时,汽车请求进入停车场 EntryBarrier 入口的护栏 Await Enable 等待停车场内有空闲车位
ExitBarrier 出口的护栏




[问题1]
根据说明中的描述,使用表3-11给出的用例名称,给出图3-22中U1、U2和U3所对应的用例。

【参考答案】

[问题1] 表3-11中给出了Car entry、Car exit、Report Statistics、Car ent......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

问答题
[说明] (1)对给定的字符集合及相应的权值,采用哈夫曼算法构造最优二叉树,并用结构数组存储最优二叉树。例如,给定字符集合{a,b,c,d)及其权值2、7、4、5,可构造如图3-26所示的最优二叉树,以及相应的结构数组Ht(如表3-12所示,其中数组元素Ht[0]不用)。表3-12 结构数组Ht数组下标chweightparentlchildrchild1a25002b77003c45004d5600566136180267结构数组Ht的类型定义如下: (2)用“0”或“1”标识最优二叉树中分支的规则是:从一个结点进入其左(右)孩子结点,就用“0”(或“1”)标识该分支(示例见图3-26)。 (3)若用上述规则标识最优二叉树的每条分支后,从根结点开始到叶子结点为止,按经过分支的次序将相应标识依次排列,可得到由“0”、“1”组成的一个序列,称此序列为该叶子结点的前缀编码。例如图3-26所示的叶子结点a、b、c、d的前缀编码分别是110、0、111、10。 [函数说明1] 函数void LeafCode (int root,int n)的功能是:采用非递归方法,遍历最优二叉树的全部叶子结点,为所有的叶子结点构造前缀编码。其中,形参root为最优二叉树的根结点下标;形参n为叶子结点个数。 在函数void LeafCode (int root,int n)构造过程中,将Ht[p].weight域用做被遍历结点的遍历状态标志。 [函数4.1] [函数说明2] 函数void Decode (char (作图)buff,int root)的功能是:将前缀编码序列翻译成叶子结点的字符序列,并输出。其中,形参root为最优二叉树的根结点下标;形参buff指向前缀编码序列。 [函数4.2]