![银行家算法-C++源程序[1]_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-6/12/8d413070-dd58-4af5-ac87-536a7019a39a/8d413070-dd58-4af5-ac87-536a7019a39a1.gif)
![银行家算法-C++源程序[1]_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-6/12/8d413070-dd58-4af5-ac87-536a7019a39a/8d413070-dd58-4af5-ac87-536a7019a39a2.gif)
![银行家算法-C++源程序[1]_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-6/12/8d413070-dd58-4af5-ac87-536a7019a39a/8d413070-dd58-4af5-ac87-536a7019a39a3.gif)
![银行家算法-C++源程序[1]_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-6/12/8d413070-dd58-4af5-ac87-536a7019a39a/8d413070-dd58-4af5-ac87-536a7019a39a4.gif)
![银行家算法-C++源程序[1]_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-6/12/8d413070-dd58-4af5-ac87-536a7019a39a/8d413070-dd58-4af5-ac87-536a7019a39a5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include stdafx.h#include#include#include#include#include#includeconst int max_p=20;const int maxa=10; /定义 a 类资源的数量 const int maxb=5;const int maxc=7;typedef struct nodeint a;int b;int c;int remain_a;int remain_b;int remain_c;bank;typedef struct node1char name20;int a;int b;int c;int need_a;int need
2、_b;int need_c;process;bank banker;process processesmax_p;int quantity;/初始化函数void initial()int i;banker.a=maxa;banker.b=maxb;banker.c=maxc;banker.remain_a=maxa;banker.remain_b=maxb;banker.remain_c=maxc;for(i=0;imax_p;i+)strcpy(,);processesi.a=0;processesi.b=0;processesi.c=0;processesi.
3、need_a=0;processesi.need_b=0;processesi.need_c=0;/新加作业void add()char name20;int flag=0;int t;int need_a,need_b,need_c;int i;coutendl;cout新加作业endl;coutendl; coutname;for(i=0;iquantity;i+)if(!strcmp(,name)flag=1;break;if(flag)cout错误,作业已存在endl;elsecoutneed_a;coutneed_b;coutneed_c;t=1;cou
4、tneed_abanker.remain_a)cout错误,所需 a 类资源大于银行家所剩 a 类资源banker.remain_b)cout错误,所需 b 类资源大于银行家所剩 b 类资源banker.remain_c)cout错误,所需 c 类资源大于银行家所剩 c 类资源endl; t=0;if(t)strcpy(,name);processesquantity.need_a=need_a;processesquantity.need_b=need_b;processesquantity.need_c=need_c;quantity+;cout
5、新加作业成功endl;elsecout新加作业失败endl;/为作业申请资源void bid()char name20;int i,p;int a,b,c;int flag;coutendl为作业申请资源endl;coutendl; coutname;p=-1;for(i=0;iquantity;i+)if(!strcmp(,name)p=i;break;if(p!=-1)couta;coutb;coutc;flag=1;if(abanker.remain_a)|(aprocessesp.need_a-processesp.a)cout错误,所申请 a 类资源大于
6、银行家所剩 a 类资源或该进程还需数量banker.remain_b)|(bprocessesp.need_b-processesp.b)cout错误,所申请 b 类资源大于银行家所剩 b 类资源或该进程还需数量banker.remain_c)|(cprocessesp.need_c-processesp.c)cout错误,所申请 c 类资源大于银行家所剩 c 类资源或该进程还需数量endl; flag=0;if(flag)banker.remain_a-=a;banker.remain_b-=b;banker.remain_c-=c;processesp.a+=a; processesp.b
7、+=b;processesp.c+=c;cout为作业申请资源成功endl;elsecout为作业申请资源失败endl;elsecout该作业不存在endl;/撤消作业void finished()char name20;int i,p;coutendl撤消作业endl;coutendl; coutname;p=-1;for(i=0;iquantity;i+)if(!strcmp(,name)p=i;break;if(p!=-1)banker.remain_a+=processesp.a;banker.remain_b+=processesp.b;banker.r
8、emain_c+=processesp.c;for(i=p;iquantity-1;i+)processesi=processesi+1;strcpy(,);processesquantity-1.a=0;processesquantity-1.b=0;processesquantity-1.c=0;processesquantity-1.need_a=0; processesquantity-1.need_b=0; processesquantity-1.need_c=0;quantity-;cout撤消作业成功endl;elsecout撤消作
9、业失败endl;/查看资源情况void view()int i;coutendl查看资源情况endl;coutendl; cout银行家所剩资源(剩余资源/总共资源)endl;couta 类:banker.remain_a/banker.a;cout b 类:banker.remain_b/banker.b;cout c 类:banker.remain_c/banker.c;coutendlendl作业占用情况(已占用资源/所需资源)endl0)for(i=0;iquantity;i+)cout作业名:endl;couta 类:processesi.a/proce
10、ssesi.need_a;cout b 类:processesi.b/processesi.need_b;cout c 类:processesi.c/processesi.need_c;coutendl;elsecout当前没有作业endl;/显示版权信息函数void version()coutendlendl;coutvoid main()银 行 家 算 法endl;int chioce;int flag=1;initial();version();while(flag)coutendl; cout1.新加作业 2.为作业申请资源 3.撤消作业endl;cout4.查看资源情况 0.退出系统
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国压缩天然节能汽车行业市场深度研究及投资战略规划建议报告
- 2025年中国工业锅炉及配件行业市场全景调研及投资规划建议报告
- 2025年高氯化聚乙烯面漆项目投资可行性研究分析报告
- 2025年医疗保健文件翻译合同
- 2025年中国箱板包装行业市场调查研究及发展战略规划报告
- 2025年中国炔诺酮片行业市场运行现状及投资战略研究报告
- 2021-2026年中国手机玻璃市场竞争格局及投资战略规划报告
- 2025年中国化妆品零售产业园区市场前景预测及投资规划研究报告
- 2024-2030年中国软件定义网络行业发展运行现状及投资潜力预测报告
- 2022-2027年中国观光类主题公园行业市场深度分析及投资战略规划研究报告
- 北京市北京四中2025届高三第四次模拟考试英语试卷含解析
- 2024年快递行业无人机物流运输合同范本及法规遵循3篇
- 伤残抚恤管理办法实施细则
- DL-T+5196-2016火力发电厂石灰石-石膏湿法烟气脱硫系统设计规程
- 2024-2030年中国产教融合行业市场运营态势及发展前景研判报告
- 2024年微生物检测试剂行业商业计划书
- 高中英语选择性必修一单词表
- 物业公司介绍
- (正式版)SHT 3551-2024 石油化工仪表工程施工及验收规范
- 【永辉超市公司员工招聘问题及优化(12000字论文)】
- 中国直销发展四个阶段解析
评论
0/150
提交评论