Untitled
Itiswhatitis
java
3 years ago
1.4 kB
1
Indexable
void RR() { int count, j, n, time, remain, flag = 0, time_quantum; int wait_time = 0, turnaround_time = 0, at[10], bt[10], rt[10]; // Enter process here scanf("%d",&n); remain = n; for (count = 0; count < n; count++) { // printf("Enter Arrival Time and Burst Time for Process Process Number %d :",count+1); // scanf("%d",&at[count]); // scanf("%d",&bt[count]); rt[count] = bt[count]; } // Enter quntam here scanf("%d",&time_quantum); // printf("\n\nProcess\t|Turnaround Time|Waiting Time\n\n"); for (time = 0, count = 0; remain != 0;) { if (rt[count] <= time_quantum && rt[count] > 0) { time += rt[count]; rt[count] = 0; flag = 1; } else if (rt[count] > 0) { rt[count] -= time_quantum; time += time_quantum; } if (rt[count] == 0 && flag == 1) { remain--; // printf("P[%d]\t|\t%d\t|\t%d\n",count+1,time-at[count],time-at[count]-bt[count]); // WOrk Here wait_time+=time-at[count]-bt[count]; // Work Here turnaround_time+=time-at[count]; flag = 0; } if (count == n - 1) count = 0; else if (at[count + 1] <= time) count++; else count = 0; } // printf("\nAverage Waiting Time= %f\n",wait_time*1.0/n); // printf("Avg Turnaround Time = %f",turnaround_time*1.0/n); return 0; }
Editor is loading...