fork download
  1. #include<stdio.h>
  2.  
  3. int main()
  4. {
  5.  
  6. int count,j,n,time,remain,flag=0,time_quantum;
  7. int wait_time=0,turnaround_time=0,at[10],bt[10],rt[10];
  8. printf("Enter Total Process:\t ");
  9. scanf("%d",&n);
  10. remain=n;
  11. for(count=0;count<n;count++)
  12. {
  13. printf("Enter Arrival Time and Burst Time for Process Process Number %d :",count+1);
  14. scanf("%d",&at[count]);
  15. scanf("%d",&bt[count]);
  16. rt[count]=bt[count];
  17. }
  18. printf("Enter Time Quantum:\t");
  19. scanf("%d",&time_quantum);
  20. printf("\n\nProcess\t|Turnaround Time|Waiting Time\n\n");
  21. for(time=0,count=0;remain!=0;)
  22. {
  23. if(rt[count]<=time_quantum && rt[count]>0)
  24. {
  25. time+=rt[count];
  26. rt[count]=0;
  27. flag=1;
  28. }
  29. else if(rt[count]>0)
  30. {
  31. rt[count]-=time_quantum;
  32. time+=time_quantum;
  33. }
  34. if(rt[count]==0 && flag==1)
  35. {
  36. remain--;
  37. printf("P[%d]\t|\t%d\t|\t%d\n",count+1,time-at[count],time-at[count]-bt[count]);
  38. wait_time+=time-at[count]-bt[count];
  39. turnaround_time+=time-at[count];
  40. flag=0;
  41. }
  42. if(count==n-1)
  43. count=0;
  44. else if(at[count+1]<=time)
  45. count++;
  46. else
  47. count=0;
  48. }
  49. printf("\nAverage Waiting Time= %f\n",wait_time*1.0/n);
  50. printf("Avg Turnaround Time = %f",turnaround_time*1.0/n);
  51.  
  52. return 0;
  53. }
Success #stdin #stdout 0s 4528KB
stdin
Standard input is empty
stdout
Enter Total Process:	 Enter Time Quantum:	

Process	|Turnaround Time|Waiting Time


Average Waiting Time= -nan
Avg Turnaround Time = -nan