银行业务活动的模拟

银行业务活动的模拟

ID:39245884

大小:279.00 KB

页数:16页

时间:2019-06-28

银行业务活动的模拟_第1页
银行业务活动的模拟_第2页
银行业务活动的模拟_第3页
银行业务活动的模拟_第4页
银行业务活动的模拟_第5页
资源描述:

《银行业务活动的模拟》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据结构课程设计报告题目:银行业务的活动模拟学生姓名:学号:班级:指导教师:2013年1月10日数据结构课程设计任务书一、需求分析说明银行业务活动的模拟假设某银行有4个窗口对外接待客户,从早晨银行开门不断有客户进入银行,由于每个窗口在某个时刻只能接待一个客户。因此在客户人数众多时需要在每个窗口前顺次排队,对于刚进入银行的客户。如果某个窗口的业务员正空闲,则可上前办理业务。反之,若窗口均有客户所占,他便会排在为数最少的队伍后面。编制一个程序模拟银行的这种业务活动并计算一天中客户在银行的平均逗留时间。本课程设计的目的就是要达到

2、理论与实际应用相结合,使我们能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养基本的、良好的程序设计技能。二、总体设计首先把银行一天的营业时间定为480。要计算一天中客户在银行的平均逗留时间则需要计算每个客户在银行的逗留时间,而客户在银行的逗留时间有他到达银行的时刻和离开银行的时刻决定。每个客户在银行逗留的时段与客户到达银行的时刻、在银行排队等候时间和顾客在窗口办理业务的时间,三部分组成。对于这三个时刻或时间段,客户在银行排队等候的时间由队列长短自然决定,也与其他客户的多少和办

3、理业务的时间长短有关;而到达银行的时刻和客户在窗口办理业务的时间是独立随机的,只与客户本人有关,因此这两个事件的时刻和时间用随机数进行模拟。三、详细设计1、设计四个类分别是QueueNode、QueueHeader、EventNode、EventList。他们的组成形式为:(1)classQueueNode{public:intarrivetime;intduration;QueueNode*next;};该类中arrivetime指的是客户到达时间,duration指的是客户的服务时间,next指针指向下一个节点。(2)

4、classQueueHeader{public:QueueNode*front,*rear;intlength;};该类中定义了两个QueueNode类的指针对象,分别指向队列的头指针和尾指针;Length指的是当前队列的长度,即客户的数目。(3)classEventNode{public:IntoccurTime,eventType;EventNode*next;};该类中的occurTime指的是一个事件占用的时间,eventType指的是事件类型。定义了一个next指针指向下一个事件点。(4)classEventLi

5、st{public:EventNode*front,*rear;inteventNum;};该类中定义了两个EventNode类指针front和rear,分别指向队头和队尾,eventNum指的是事件的总数目。类图:2、(1).函数intgenerate(EventNode**p)用来分配事件点。(2).函数voidInsertEvent(EventList*eventlst,intoccurTime,intetype)用来将客户插入到队列中(3).函数voidDeleteEvent(EventList*eventlst,

6、EventNode**event)作用是删除事件点。(4).函数voidrandom(int*durtime,int*intevatime)是一个随机函用来随机的产生客户到达银行的时间。四、实现部分#include#include#include#include//时间函数头文件声明#defineCLOSETIME480//定义营业时间#defineM4//定义服务窗口数量classQueueNode//类的定义{public:intarr

7、ivetime;intduration;QueueNode*next;};classQueueHeader{public:QueueNode*front,*rear;intlength;};classEventNode{public:intoccurTime,eventType;EventNode*next;};classEventList{public:EventNode*front,*rear;inteventNum;};QueueHeaderq[M+1];EventList*eventlst;intseed=300;

8、intgenerate(EventNode**p){*p=newEventNode;if(!(*p)){cout<<"allocationerror!";return-1;}return0;}voidInsertEvent(EventList*eventlst,intoccurTime,intetype

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。