/* Program to Implement SHORTEST JOB FIRST CPU Scheduling Algorithm */
#include<stdio.h>
void main()
{
int p[10],bt[10],st[10],ct[10],tat[10],wt[10],i,j,temp,n;
float sumtat=0,sumwt=0,avwt,avtat;
printf("\n enter the no of processes");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("\n enter the process no and burst time ");
scanf("%d %d",&p[i],&bt[i]);
}
for(i=0;i<n;i++)
{
for(j=0;j<n-1;j++)
{
if(bt[j]>bt[j+1])
{
temp=bt[j];
bt[j]=bt[j+1];
bt[j+1]=temp;
}
}
}
st[0]=0;
wt[0]=0;
ct[0]=st[0]+bt[0];
for(i=0;i<n;i++)
{
st[i+1]=st[i] + bt[i];
ct[i+1]=st[i+1]+ bt[i+1];
}
for(i=0;i<n;i++)
{
tat[i]=ct[i]-0;
sumtat=sumtat + tat[i];
}
for(i=0;i<n;i++)
{
wt[i]=tat[i]-bt[i];
sumwt=sumwt + wt[i];
}
printf("\n\t Pno\tbt\tst\tct\ttat\twt\n");
for(i=0;i<n;i++)
{
printf("\n\t%d\t%d\t%d\t%d\t%d\t%d",p[i],bt[i],st[i],ct[i],tat[i],wt[i]);
}
avtat=sumtat/n;
avwt=sumwt/n;
printf("\n avearge waiting time is %f\n",avwt);
printf("\n average turnaroundtime is %f\n",avtat);
}
output
#include<stdio.h>
void main()
{
int p[10],bt[10],st[10],ct[10],tat[10],wt[10],i,j,temp,n;
float sumtat=0,sumwt=0,avwt,avtat;
printf("\n enter the no of processes");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("\n enter the process no and burst time ");
scanf("%d %d",&p[i],&bt[i]);
}
for(i=0;i<n;i++)
{
for(j=0;j<n-1;j++)
{
if(bt[j]>bt[j+1])
{
temp=bt[j];
bt[j]=bt[j+1];
bt[j+1]=temp;
}
}
}
st[0]=0;
wt[0]=0;
ct[0]=st[0]+bt[0];
for(i=0;i<n;i++)
{
st[i+1]=st[i] + bt[i];
ct[i+1]=st[i+1]+ bt[i+1];
}
for(i=0;i<n;i++)
{
tat[i]=ct[i]-0;
sumtat=sumtat + tat[i];
}
for(i=0;i<n;i++)
{
wt[i]=tat[i]-bt[i];
sumwt=sumwt + wt[i];
}
printf("\n\t Pno\tbt\tst\tct\ttat\twt\n");
for(i=0;i<n;i++)
{
printf("\n\t%d\t%d\t%d\t%d\t%d\t%d",p[i],bt[i],st[i],ct[i],tat[i],wt[i]);
}
avtat=sumtat/n;
avwt=sumwt/n;
printf("\n avearge waiting time is %f\n",avwt);
printf("\n average turnaroundtime is %f\n",avtat);
}
output
No comments:
Post a Comment