博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
银行家算法 C++
阅读量:5973 次
发布时间:2019-06-19

本文共 1680 字,大约阅读时间需要 5 分钟。

// 银行家算法.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include 
using namespace std;#define M 5/*进程数*/#define N 3/*资源数*/#define False 0#define True 1int Available[N]={
3,3,2};//系统可用资源数int Max[M][N]={
{
7,5,3},{
3,2,2},{
9,0,2},{
2,2,2},{
4,3,3}};//M个进程对N类资源最大资源需求int Allocation[M][N]={
{
0,1,0},{
2,0,0},{
3,0,2},{
2,1,1},{
0,0,2}};//M个进程已分配到的资源int Need[M][N]={
{
0,0,0},{
0,0,0},{
0,0,0},{
0,0,0},{
0,0,0}};//M个进程还需要得到的资源情况void Showdata();//打印数组void Applydata();//申请资源int Check();//安全性检测void main(){ int n,i,j; //Need矩阵的计算 //插入代码for ( i = 0; i < M; i++) { for ( j = 0; j < N; j++) { Need[i][j] = Max[i][j] - Allocation[i][j]; if (Need[i][j]<0) { j--; continue; } } } while(1) { cout<<"****************************************************"<
>n; switch(n) { case 1: Applydata();//请求资源 break; case 2: Showdata();//显示资源分配情况; break; default: return; } }}void Applydata(){ int i,j,flag=0,a=0,b=0; int temp[N];//定义临时数组,存放申请的资源量。 cout<<"输入进程的编号"<
>i; cout<<"输入每个资源的请求"<
>temp[j]; }//判断Request≤Available && Need /******** 插入代码 ********/for ( i = 0; i < N; i++) { if(temp[i]<=Need[a][i]){ if(temp[i]<=Available[i]){ flag++; } } } if(flag==N) { for(j=0;j
"; } cout<

转载于:https://www.cnblogs.com/hunterxing/p/9709295.html

你可能感兴趣的文章
创建自定义的 iOS Framewok
查看>>
jquery.qrcode 生成二维码
查看>>
重装系统后,让mysql再次运行
查看>>
Drupal7 db_query SQL查询运用
查看>>
以太坊问题
查看>>
关于ListView head 动态设置高度
查看>>
poj 1191 棋盘分割
查看>>
Web development history & Technologies
查看>>
内网通v3.1.2141无捆绑绿色官方版
查看>>
使用Spring来实现任务计划服务三:集成quartz任务调度框架
查看>>
Java弱引用与WeakHashMap
查看>>
JmsTemplate(3.2.8 RELEASE)笔记
查看>>
授权,创建,查询,删除dblink
查看>>
PHP学习 smarty 综合项目运用
查看>>
古典:深潜行动的3个叮嘱和3个原则
查看>>
Hadoop安装配置(入门)
查看>>
新浪微博开放平台接口调用类PHP5版
查看>>
清明祭@楚风[2010-4-8 18:46]
查看>>
毕业设计(一)---写在前面
查看>>
《head first python》读书笔记
查看>>