首页 > 编程语言 >C/C++模拟银行排队叫号系统[2023-05-11]

C/C++模拟银行排队叫号系统[2023-05-11]

时间:2023-05-11 14:23:14浏览次数:41  
标签:11 窗口 05 到达 排队 银行 C++ 客户 模拟

C/C++模拟银行排队叫号系统[2023-05-11]

2、模拟银行排队叫号系统(难度等级A)

[问题描述]

  模拟实现银行的排队叫号系统。

[基本要求]

(1) 假定银行上午9点开门,下午5点关门,期间每个小时的客流量不超过35人;
(2) 每个客户的基本信息包括:到达银行时间、业务需要办理的时长。这两项数据均由系统随机生成,其中业务办理所需时长定义不超过30分钟。若随机生成的时长等于0,即说明该客户未办理业务,提前离开;根据客户达到银行的时间,为客户发放号码牌(提前离开的客户,由于也已经到达银行,因此也会被发放号码牌);
(3) 程序运行时,由键盘输入银行的窗口数量,然后输出:第几号客户几点到达,在等待了多少分钟后,在几号窗口办理业务,持续多少分钟;若客户是提前离开的,那对应的输出就是:第几号客户几点到达,提前离开。将8小时内,所有被服务的客户按照上述要求输出基本信息。最后,统计一下,每个窗口分别服务了多少客户,今天一共服务了多少客户;客户最长的等待时间以及客户的平均等待时间;
(4) 提示用户可以继续输入窗口数量,若输入0,程序结束;否则按照上述要求给出相应的输出;
(5) 观察银行的窗口数量与接待客户总量与客户等待时间之间的关系;

[输出样例]

截屏

只显示了部分,从1号开始显示的话太长。

[算法提示]

用结构体数组表示客户(每个数组元素包括客户到达时间、业务办理时间等成员),客户的数据利用随机数自动生成,按照他们的到达时间排序;银行的窗口也用数组表示,要记录的是每个窗口当前任务完成后即将空闲的时间,哪个窗口的空闲时间最先出现,就将当前排在最前的客户推送到该窗口;若有一个以上的窗口空闲时间一致,则可以将当前排在最前的客户推送给编号最小的窗口。

源码

https://pan.baidu.com/s/1pq1Nwwo0hlc_J84F93HM4A?pwd=1111

标签:11,窗口,05,到达,排队,银行,C++,客户,模拟
From: https://www.cnblogs.com/codewriter/p/17390889.html

相关文章

  • 2023.5.11——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......
  • 2023-5-11遇到离谱的事情
    在编写shell脚本,关于实现mysql数据库备份,用到了mysqldump命令,可是在执行的时候显示'Accessdeniedforuser'weakxy'@'localhost'(usingpassword:NO)'因为没有密码,我认为应该也不是因为密码错误导致连接不上mysql所以就开始排错,因为脚本文件是放在/usr/sbin目录底下的,所以一......
  • 【C++学习笔记】C++ 正则表达式不完全支持零断宽言
    最近需要解析配置文件,遇到从@STARTDATA@END中提取DATA的正则,按照C#的操作,直接(?<=@START)[\W\w]?(?=@END),就能提取的,可是在C++中,regexe("(?<=@START)[\W\w]?(?=@END)")报错了,找了很多说法,最终结论:支持先行断言,不支持后行断言即:(?<=@START)和(?<!@START)。好在C++支持子匹......
  • C/C++交通咨询系统设计哈夫曼编码问题[2023-05-11]
    C/C++交通咨询系统设计哈夫曼编码问题[2023-05-11]题目三、交通咨询系统设计最短路径问题设计要求及分析:设计一个交通咨询系统,能让旅客咨询从任一个城市顶点到另一城市顶点之间的最短路径(里程)、最低花费、最少时间等问题。对于不同咨询要求,可输出城市间的路程、所需时间......
  • c++自定义工具类的定义和使用
    classlog_work{private:intlog_id_=1;intlog_level_;qnx_slog2()=default;virtual~qnx_slog2(){uninit();}public:inlinestaticlog_work&get_log(){staticqnx_slog2slog2_instance;returnslog2_instance;}......
  • c++模版多参数的递归用法--自定义log
    #include<iostream>#include<sstream>#include<string>#include<tuple>#include<type_traits>template<typenameT>voidprint_impl(std::ostringstream&os,constchar*format,T&&arg){while(*form......
  • C++ - 崩溃定位用dump和pdb文件
    目的利用dump和pdb文件来快速定位程序崩溃的地方步骤1、写一个简单的崩溃程序sample.cpp1classTest{2public:3voidsay(){4inta=0;5intb=10/a;6}7};89int_tmain(intargc,_TCHAR*argv[])10{11Testt;......
  • 1193. 每月交易 I
    【题目】Table:Transactions+---------------+---------+|ColumnName  |Type   |+---------------+---------+|id           |int    ||country      |varchar||state        |enum   ||amount       |int  ......
  • 真机调试可以正常安装,但是不能正常运行,出现错误:couldn‘t find “libc++_shared.so“
    在迁移代码的时候,发现代码可以在模拟器上运行,但是无法在真机上面运行,最后经过挨个的排查,最终发现是ndk的问题。在app的build.gradle中的ndk缺少了匹配的实体机类型,然后加了一下'x86','armeabi-v7a','armeabi','armabi-v7a','x86_64','arm64-v8a','mips','mips64......
  • 5月11日周四
    计划删减代码,把它变成自己的,准备答辩学习前端知识angular框架,html语法扎实的学,css,JavaScript学习后端框架,Java语言学扎实点知道接口怎么回事,尝试或明白一个接口怎么写,接口调试是怎么实现的解决配置文件中resources中的几千个报错,不解决,无意义要搞明白数据库中的字段......