fork download
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int arrival_time[10], burst_time[10], temp[10];
  6. int i, smallest, count = 0, time, limit;
  7. double wait_time = 0, turnaround_time = 0, end;
  8. float average_waiting_time, average_turnaround_time;
  9. printf("\nEnter the Total Number of Processes:\t");
  10. scanf("%d", &limit);
  11. printf("\nEnter Details of %d Processes\n", limit);
  12. for(i = 0; i < limit; i++)
  13. {
  14. printf("\nEnter Arrival Time:\t");
  15. scanf("%d", &arrival_time[i]);
  16. printf("Enter Burst Time:\t");
  17. scanf("%d", &burst_time[i]);
  18. temp[i] = burst_time[i];
  19. }
  20. burst_time[9] = 9999;
  21. for(time = 0; count != limit; time++)
  22. {
  23. smallest = 9;
  24. for(i = 0; i < limit; i++)
  25. {
  26. if(arrival_time[i] <= time && burst_time[i] < burst_time[smallest] && burst_time[i] > 0)
  27. {
  28. smallest = i;
  29. }
  30. }
  31. burst_time[smallest]--;
  32. if(burst_time[smallest] == 0)
  33. {
  34. count++;
  35. end = time + 1;
  36. wait_time = wait_time + end - arrival_time[smallest] - temp[smallest];
  37. turnaround_time = turnaround_time + end - arrival_time[smallest];
  38. }
  39. }
  40. average_waiting_time = wait_time / limit;
  41. average_turnaround_time = turnaround_time / limit;
  42. printf("\n\nAverage Waiting Time:\t%lf\n", average_waiting_time);
  43. printf("Average Turnaround Time:\t%lf\n", average_turnaround_time);
  44. return 0;
  45. }
Success #stdin #stdout 0s 5516KB
stdin
Standard input is empty
stdout
Enter the Total Number of Processes:	
Enter Details of 0 Processes


Average Waiting Time:	-nan
Average Turnaround Time:	-nan