OneCompiler

fsfs

138

#include<stdio.h>
int A[10][10], M[10][10], N[10][10];
int AV[10], Safe[10], Finish[10], R[10][10], nor, nop;
void AcceptData(intX[][10])
{
int i, j;
for (i = 0; i < nop; i++)
{
printf("P%d\n", i);
for (j = 0; j < nor; j++)
{
printf("%c:", 65 + j); scanf("%d", &X[i][j]);
}
}
}
void AcceptAvailable()
{
int i;
for (i = 0; i < nor; i++)
{
printf("%c:", 65 + i);
scanf("%d", &AV[i]);
}
}
void AcceptRequest(intR[][10])
{
int i;
for (i = 0; i < nor; i++)
{
printf("%c:", 65 + i);
scanf("%d", &R[i]);
}
}
void DisplayData()
{
Process Allocation Max Available
A B C A B C A B C
P0 2 3 2 9 7 5 3 3 2
P1 4 0 0 5 2 2
P2 5 0 4 1 0 4
P3 4 3 3 4 4 4
P4 2 2 4 6 5 5
int i, j; printf("\n\tAllocation\t\tMax\t\tNeed\n"); printf("\t");
for (i = 0; i < 3; i++)
{
for (j = 0; j < nor; j++)
{
printf("%4c", 65 + j);
}
printf("\t");
}
for (i = 0; i < nop; i++)
{
printf("\nP%d\t", i);
for (j = 0; j < nor; j++)
{
printf("%4d", A[i][j]);
}
printf("\t");
for (j = 0; j < nor; j++)
{
printf("%4d", M[i][j]);
}
printf("\t");
for (j = 0; j < nor; j++) printf("%4d", N[i][j]);
}
printf("\nAvailable\n"); for (j = 0; j < nor; j++)
{
printf("%4d", AV[j]);
}
}
void CalcNeed()
{
int i, j;
for (i = 0; i < nop; i++)
{
for (j = 0; j < nor; j++)
{
N[i][j] = M[i][j] - A[i][j];
}
}
}
int CheckNeed(intpno)
{
int i;
for (i = 0; i < nor; i++)
{
if (N[pno][i] > AV[i])
{
return 0;
}
}
return 1;
}
int main()
{
printf("\nEnter Number of Process :"); scanf("%d", &nop);
printf("\nEnter Number of Resources :"); scanf("%d", &nor);
printf("Enter Allocation\n"); AcceptData(A);
printf("Enter MAX Requirement\n"); AcceptData(M);
printf("Enter Availability\n"); AcceptAvailable();
CalcNeed(); DisplayData();
}