2022年上半年软件设计师案例分析试题模拟试题及答案(2)
- 试题一、阅读下列说明和java代码,将应填入(n)处的字句写在答题纸的对应栏内。
- 【说明】
- 某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图6-1所示。
- 采用状态(state)模式来实现该纸巾售卖机,得到如图6-2所示的类图。其中类state为抽象类,定义了投币、退币、出纸巾等方法接口。类soldstate、soldoutstate、noquarterstate和hasquarterstate分别对应图6-1中纸巾售卖机的4种状态:售出纸巾、纸巾售完、没有投币、有2元钱。
- 【java代码】
- import java.util.*;
- interface state {
- public void insertquarter(); //投币
- public void ejectquarter(); //退币
- public void turncrank(); //按下“出纸巾”按钮
- public void dispense(); //出纸巾
- }
- class tissuemachine {
- (1) soldoutstate, noquarterstate, hasquarterstate, soldstate, state;
- state = soldoutstate;
- int count = 0; //纸巾数
- public tissuemachine(int numbers) { /* 实现代码省略 */ }
- public state gethasquarterstate() { return hasquarterstate; }
- public state getnoquarterstate() { return noquarterstate; }
- public state getsoldstate() { return soldstate; }
- public state getsoldoutstate() { return soldoutstate; }
- public int getcount() { return count; }
- // 其余代码省略
- }
- class noquarterstate implements state {
- tissuemachine tissuemachine;
- public void insertquarter() {
- tissuemachine.setstate( (2) );
- }
- //构造方法以及其余代码省略
- }
- class hasquarterstate implements state {
- tissuemachine tissuemachine;
- public void ejectquarter() {
- tissuemachine.setstate( (3) );
- }
- //构造方法以及其余代码省略
- }
- class soldstate implements state {
- tissuemachine tissuemachine;
- public void dispense() {
- if(tissuemachine.getcount() > 0) {
- tissuemachine.setstate( (4) );
- } else {
- tissuemachine.setstate( (5) ); }
- }
- }
查看答案 -
考友试题答案分享: - 试题二、阅读下列说明,回答问题l至问题4,将解答填入答题纸的对应栏内。
- 【说明】
- 某证券交易所为了方便提供证券交易服务,欲开发一证券交易平台,该平台的主要功能如下:
- (1)开户。根据客户服务助理提交的开户信息,进行开户,并将客户信息存入客户记录中,账户信息(余额等)存入账户记录中;
- (2)存款。客户可以向其账户中存款,根据存款金额修改账户余额;
- (3)取款。客户可以从其账户中取款,根据取款金额修改账户余额;
- (4)证券交易。客户和经纪人均可以进行证券交易(客户通过在线方式,经纪人通过电话),将交易信息存入交易记录中;
- (5)检查交易。平台从交易记录中读取交易信息,将交易明细返回给客户。
- 现采用结构化方法对该证券交易平台进行分析与设计,获得如图1-1所示的上下文数一据流图和图1-2所示的o层数据流图。
- 【问题1](3分)
- 使用说明中的词语,给出图1-1中的实体e1-e3的名称。
- 【问题2】(3分)
- 使用说明中的词语,给出图1-2中的数据存储d1-d3的名称。
- 【问题3】(4分)
- 根据说明和图中的术语,补充图1-2中缺失的数据流及其起点和终点。
- 【问题4】(5分)
- 实际的证券交易通常是在证券交易中心完成的,因此,该平台的“证券交易”功能需将交易信息传递给证券交易中心。针对这个功能需求,需要对图1-1和图1-2进行哪些修改,请用200字以内的文字加以说明。
查看答案 -
考友试题答案分享:
506550529556: - e1:客户服务助理 e2:客户 e3:经纪人
d1:客户表 d2:客户账户表 d3:交易信息表
存款 -(存入)-> d2
取款 -(取出)-> d2
证券交易(在线)-(存入)-> d3
证券交易(电话)-(存入)-> d3
加入证券交易中心,将证券交易平台的数据流出至证券交易中心
加入证券交易中心,将d3数据传递至证券交易中心
xjyiciguo: - 1、e1:客户服务助理 e2:客户 e3:经纪人 2、d1:客户记录表 d2:账户记录表 d3:交易记录表 3、存款记录 —— 存款——>d2 取款记录 —— 取款——>d2 客户信息 —— e2——>e1 交易信息 —— 证券交易——>d3