
课程设计涉及银行业务模拟,重点在于研究顾客在银行的平均逗留时长。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
通过手工制作获得的物品。银行业务模拟【问题描述】客户的业务可以分为两种类型:第一种是向银行申请提取资金,例如取款或借款;第二种是向银行存入资金,例如存款或还款。银行设有两个服务窗口,因此也对应着两个独立的队列。当客户到达银行时,他们会首先进入第一个队列等待。处理每个客户的业务时,如果该业务属于第一种类型(提取资金),且申请金额超过银行当前可用的总资金量,则该客户会被立即转入第二个队列进行排队候补,直到有足够的资金可用时才离开银行;否则,业务处理完毕后,该客户会立即离开银行。每完成一个第二种类型的业务(存入资金)的处理后,系统会按照顺序检查并处理第二个队列中的所有客户。对于能够满足的申请者,系统会予以满足;对于无法满足的申请者,他们会被重新排到第二个队列的末尾。在此检查过程中,一旦银行的资金总额降至或低于第一个队列中最后一个客户(第二种业务)被服务之前的水平,或者本次已经对第二个队列进行了完整检查和处理一次之后,就应停止进一步检查(因为此时几乎不可能还有能够得到满足的客户),并转而继续接待第一个队列中的客户。在任何时刻都只允许使用一个服务窗口。假设检查过程本身不占用任何时间。当营业时间结束时,所有等待服务的客户都会立即离开银行。【基本要求】采用动态存储结构来实现模拟功能。【测试数据】模拟开始时,银行拥有的款项为10000元(人民币)。营业时间设定为600分钟。其他模拟参数需要自行定义并注意考虑两种极端情况:一是两个到达事件之间的间隔时间非常短而客户的交易时间很长;另一个则是两个到达事件之间的间隔时间非常长而客户的交易时间很短。同时设置两个到达事件间隔时间极长而交易时间极短的情况。【实现提示】涉及两种类型的事件:到达银行以及离开银行。初始时银行现存资金总额设定为total. 模拟开始后的第一个事件是顾客到达, 营业时间从0到closetime. 在到达事件发生时, 随机确定此顾客的交易时间和距下一个到达事件之间的时间间隔. 每一个顾客要办理的款额也需要随机确定, 用负值和正值分别表示第一类和第二类业务. 变量total, closetime以及上述两个随机量的上下界均由终端输入, 作为模拟参数. 两个队列和一个事件表都需要采用动态存储结构来实现. 注意明确在什么条件下设置离开事件, 以及如何使用合适的存储结构来实现第二个队列以获得较高的效率. 请注意: 事件表必须按照时间顺序排列.
全部评论 (0)


