1 AIM: Fcfs Scheduling Program
1 AIM: Fcfs Scheduling Program
#include<stdio.h>
int main(){
int n,i,pid[10],bt[10],wt[10],tat[10];
float twt=0,Tat=0,att,awt;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&pid[i]);
for(i=0;i<n;i++){
scanf("%d",&bt[i]);
wt[0]=0;
for(i=1;i<n;i++){
wt[i]=bt[i-1]+wt[i-1];
printf("processid bt wt tat\n");
for(i=0;i<n;i++)
{
printf("%d\t\t",pid[i]);
printf("%d\t\t",bt[i]);
printf("%d\t\t",wt[i]);
printf("%d\t\t",bt[i]+wt[i]);
printf("\n");
twt+=wt[i];
Tat+=(wt[i]+bt[i]);
awt=twt/n;
att=Tat/n;
printf("%f",awt);
printf("%f",att);
Output:
processid bt wt tat
3 4 0 4
6 5 4 9
2.0000006.500000
#include<stdio.h>
int main()
int bt[20],p[20],wt[20],tat[20],i,j,n,total=0,totalT=0,pos,temp;
float avg_wt,avg_tat;
scanf("%d",&n);
for(i=0;i<n;i++){
printf("p%d:",i+1);
scanf("%d",&bt[i]);
p[i]=i+1;
for(i=0;i<n;i++)
pos=i;
for(j=i+1;j<n;j++)
{
if(bt[j]<bt[pos])
pos=j;
temp=bt[i];
bt[i]=bt[pos];
bt[pos]=temp;
temp=p[i];
p[i]=p[pos];
p[pos]=temp;
wt[0]=0;
for(i=1;i<n;i++){
wt[i]=0;
for(j=0;j<i;j++)
wt[i]+=bt[j];
total+=wt[i];
avg_wt=(float)total/n;
for(i=0;i<n;i++){
tat[i]=bt[i]+wt[i];
totalT+=tat[i];
printf("\np%d\t\t %d\t\t %d\t\t\t%d",p[i],bt[i],wt[i],tat[i]);
avg_tat=(float)totalT/n;
Output:
p1:5
p2:7
p1 5 0 5
p2 7 5 12