银行业务模拟系统的设计和实现实验报告.docVIP

银行业务模拟系统的设计和实现实验报告.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构试验汇报 ——银行业务模拟系统设计和实现 学院:软件学院 专业:计算机科学和技术 班级:12级java班 学号: 姓名:吴静 指导老师:张磊 数 据 结 构 试验汇报 学 号 姓名 吴静 年 级 班级 计算机科学技术 机号: 学院机房 时间 .10.9、.10.16、.10.23早晨8:00--9:30(Java班) 指导老师 张磊、张俊娜 一、试验题目:银行业务模拟系统设计和实现 (该试验为综合性试验,共用6个课时) 二、试验要求: 1.试验目标: 1)经过试验掌握对离散事件模拟认识; 2)深入了解队列实现和应用; 3)对链表操作有更深层次了解; 该试验包含到线性表建立、插入、删除等操作,包含到了队列建立、插入、删除,包含到了离散事件应用思想,还包含到了排序概念。完成这个试验对线性表、队列及C语言编程等多方面知识将是一个很好利用,对离散事件也将有一个初步认识。 2.问题描述: 假设某银行有四个窗口对外接待用户,从早晨银行开门起不停有用户进入银行。因为每个窗口在某个时刻只能接待一个用户,所以在用户人数众多时需在每个窗口前顺次排队,对于刚进入银行用户,假如某个窗口员工正空闲,则可上前办理业务,反之,若四个窗口全部有用户所占,她便会排在人数最少队伍后面。现在需要编制程序以模拟银行这种业务活动并计算一天中用户在银行逗留平均时间。 3.一个完整系统应含有以下功效: 1)初始化(OpenForDay),模拟银行开门时各数据结构状态。 事件驱动(EventDrived), 对用户抵达和离开事件做对应处理。 下班处理(CloseForDay), 模拟银行关门时动作,统计用户平均逗留时间 。 [备注]: 假设银行开门时刻(间)设为0 , 银行天天营业时间在程序运行时输入(比如480分钟)。 每个用户办理业务时间不超出30分钟,两个相邻用户抵达银行时间间隔不超出5分钟要求程序实施时,只要给出银行天天营业时间即可输出用户平均逗留时间。 三、总设计思想、环境语言、工具等 总设计思想: 为了计算这个平均逗留时间,自然需要知道每个用户抵达银行和离开银行这两个时刻,后者减去前者即为每个用户在银行逗留时间。全部用户逗留时间总和被一天内进入银行用户数除便是所求平均时间。称用户抵达银行和离开银行这两个时间发生事情为“事件”,则整个模拟程序将按事件前后次序进行处理。这么一个程序称做事件驱动模拟。下面是上述银行用户离散事件驱动模拟算法。 void Bank_Simulation( int CloseTime ){ // OpenForDay ( ); //初始化,模拟银行开门时各数据结构状态。 while(有要处理事件时) //有事件可处理 { EventDrived ; //事件驱动,从事件表中取出事件en; //依据en类型(用户抵达事件或用户离开事件)做对应处理 if(en表示用户抵达) CustomerArrived( );// 处理用户抵达事件 else CustomerDeparture( ) ;// 处理用户离开事件 }//while CloseForDay( );//计算用户平均逗留时间 }// Bank_Simulation 环境语言:Windows下Microsoft VC++ 四、数据结构和模块说明 下面是模拟程序中需要数据结构及其操作。 1.模拟算法关键处理对象是“事件”,事件关键信息是事件类型和事件发生时刻。算法中处理事件有两类:一类是用户抵达事件;另一类是用户离开事件。前一类事件发生时刻随用户到来自然形成;后一类事件发生时刻由用户办理业务所需时间和等候时间而定。因为程序驱动是按事件发生时刻前后次序进行,所以事件表应是有序表,其关键操作是插入和删除事件,用一个单链表表示!! 2.模拟程序中需要另一数据结构是表示用户排队队列,因为假设银行有4个窗口,所以程序中需要4个队列,队列中相关用户信息是用户抵达时刻和用户办理业务所需要时间。每个队列中队头用户即为正在窗口办理事务用户,她办完业务离开队列时刻就是立即发生用户离开事件时刻,这就是说,对每个队头用户全部存在一个将要驱动用户离开事件。所以在任何时刻立即发生事伯只有5种可能:1)新用户抵达;2)1号窗口用户离开;3)2号窗口用户离开;4)3号窗口用户离开;5)4号窗口用户离开; 注:为了使编写程序含有通用性,在编程序时将银行营业时间、开窗口数、用户办业业务最长时间及两个用户抵达时间间隔全部设置成程序运行时动态输入,这么能够对程序和银开设窗口合理性进行分析,实现真正模拟。 从以上分析可知,在模拟程序中只需要两种数据结构:有序链

文档评论(0)

130****8663 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档