Advertisement
carlos1993

Untitled

May 5th, 2015
330
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.44 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<conio.h>
  3. int main()
  4. {    int i,j,n,time,remain,flag=0,ts;
  5.      int sum_wait=0,sum_turnaround=0,at[10],bt[10],rt[10];
  6.      printf("Enter no of Processes : ");
  7.      scanf("%d",&n);
  8.      remain=n;  
  9.      for(i=0;i<n;i++)
  10.     {     printf("Enter  arrival time and burst time for Process P%d :",i+1);                 scanf("%d",&at[i]);    
  11.           scanf("%d",&bt[i]);    
  12.           rt[i]=bt[i];         }  
  13.    printf("Enter time slice");  
  14.    scanf("%d",&ts);  
  15.    printf("\n\nProcess\t|Turnaround time|waiting time\n\n");                          for(time=0,i=0;remain!=0;)  
  16.        {     if(rt[i]<=ts && rt[i]>0)    
  17.                        {       time+=rt[i];       rt[i]=0;       flag=1;     }    
  18.                else if(rt[i]>0)    
  19.                       {       rt[i]-=ts;       time+=ts;     }    
  20.                 if(rt[i]==0 && flag==1)    
  21.                       {       remain--;      
  22.               printf("P[%d]\t|\t%d\t|\t%d\n",i+1,time-at[i],time-at[i]-bt[i]);                     sum_wait+=time-at[i]-bt[i];      
  23.               sum_turnaround+=time-at[i];      
  24.               flag=0;     }    
  25.                if(i==n-1)      
  26.                i=0;  
  27.              else if(at[i+1]<=time)      
  28.              i++;  
  29.              else       i=0;             }  
  30.  printf("\nAvg sum_wait = %f\n",sum_wait*1.0/n);  
  31. printf("Avg sum_turnaround = %f",sum_turnaround*1.0/n);    
  32. return 0; }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement