- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二、应用分析题
应用面向对象技术分析一在职职工医疗保险管理系统,用来对职工的个人医保帐户进行管理,系统的需求为:
每个职工有一个唯一的帐号,记录该职工的帐上余额。个人每月交纳的保险金额为工资的2%,单位为个人每月交纳的保险金额为工资的7%。
每个职工有一个IC卡,有密码,并与职工的个人帐户相关联。每次就医后可凭卡支付医疗费用,IC卡可挂失、重发,如何时候都只有一张卡有效。
系统要记录每次交纳医疗保险金的往来帐,并能查询打印这些信息。
系统要记录每次支付医疗保险金的往来帐,并能查询打印这些信息。系统不能透支。
不考虑对个人工资的管理、个人所属单位的管理。但要考虑入保和退保的处理。
系统分析设计与编程要求为:
分析系统的对象集合,得出系统的类集合。
完成系统所有类的属性的定义。
完成系统所有类的服务定义。
确定系统类之间的结构与连接关系。
采用半展开方式进行主题划分。
完成一个用例图的描述,以及一个类的编程实现。
1. 由问题要求可知系统对象集合包括:职工、IC卡、统计簿,故该系统中应包含的类有:职工类、IC卡类、统计簿类。
2. 职工类包含的属性有:账号、姓名、工资、医保卡余额、IC卡
IC卡类包含的属性有:密码、账号、状态
统计簿类包含的属性有:员工数、员工医保花销
3. 职工类包含的方法有:入保、退保、就医、获取余额、计算结余
IC卡类包含的方法有:设置密码、获取卡号、支付、挂失、重发、注销
统计簿类包含的方法有:查询、打印
4. 系统类之间的结构和联系图
5. 半展开主题图
职工信息
职工信息
职工
IC卡
2. 交纳记录
IC卡
统计簿
3. 外部接口
查询
打印
6. 用例图描述
7.运行结果:
8.程序代码:
#include string
#include iostream
using namespace std;
//IC卡类
class ICcard
{
private:
long number;//IC卡卡号
char password[6];//密码
bool state;//状态,是否加入医保或挂失
public:
ICcard()
{
state=true;
number++;
}
//设置密码
void setPassword()
{
coutplease input your password length of 6endl;
string str1,str2;
cinstr1;
coutplease againendl;
cinstr2;
if(str1==str2)
{
for(int i=0;i6;i++)
password[i]=str1[i];
}
else
coutpassword differ!endl;
}
//退出医保
void retreat()
{
state=false;
number--;
}
//获取IC卡卡号
long getNumber()
{
return number;
}
//挂失
void drop()
{
state=false;
}
//重新补发
void redistribute()
{
state=true;
}
//支付医疗费用
float pay(float expend)
{
if(state=true)
return expend;
}
};
//职工类
class Employee
{
private:
string name;//姓名
ICcard *iccard;//IC卡
float salary;//薪水
float medicalSaving;//医保金额
long id;//账号
public:
Employee()
{
}
Employee(string name,float salary)
{
this-name=name;
this-salary=salary;
}
//入保
void join()
{
iccard=new ICcard();
id=iccard-getNumber()+100000;
iccard-setPassword();
medicalSaving=salary*0.09;
}
//退保
void quit()
{
coutyou have to drop out the system,we will call back the ICcard endl;
iccard-retreat();
}
//就医
void consume(float ex
您可能关注的文档
最近下载
- 第8课 用制度体系保证人民当家作主 课件 中职高教版中国特色社会主义.pptx
- 《童年》导读课堂实录.docx
- 02S515排水检查井图集.pdf VIP
- 药棒穴位按摩1.ppt VIP
- 硅PU篮球场监理细则.doc VIP
- 专题14 化学反应速率与化学平衡-五年(2020-2024)高考化学真题分类汇编(原卷版).docx VIP
- 2022年浙江省招警考试《公安基础知识》考试题库汇总(含解析).pdf VIP
- 美的集团精益智能工厂数字化建设三年规划方案(70页).pptx VIP
- 数字电路试题-及答案.doc VIP
- 国家体育总局2024年事业单位公开招聘人员(秋季)笔试备考题库附答案详解.docx VIP
文档评论(0)