SJFC
Thu Jun 06 2024 18:06:13 GMT+0000 (Coordinated Universal Time)
Saved by
@prabhas
#include <stdio.h>
int main() {
int n, total_waiting_time = 0, total_turnaround_time = 0;
printf("Enter the number of processes: ");
scanf("%d", &n);
int arrival_time[n], burst_time[n], waiting_time[n], turnaround_time[n], temp;
for (int i = 0; i < n; i++) {
printf("Enter arrival time and burst time for process %d: ", i + 1);
scanf("%d %d", &arrival_time[i], &burst_time[i]);
}
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (burst_time[j] > burst_time[j + 1]) {
temp = burst_time[j];
burst_time[j] = burst_time[j + 1];
burst_time[j + 1] = temp;
temp = arrival_time[j];
arrival_time[j] = arrival_time[j + 1];
arrival_time[j + 1] = temp;
}
}
}
printf("Process\tWaiting Time\tTurnaround Time\n");
int current_time = 0;
for (int i = 0; i < n; i++) {
waiting_time[i] = current_time - arrival_time[i] < 0 ? 0 : current_time - arrival_time[i];
turnaround_time[i] = waiting_time[i] + burst_time[i];
total_waiting_time += waiting_time[i];
total_turnaround_time += turnaround_time[i];
printf("%d\t%d\t\t%d\n", i + 1, waiting_time[i], turnaround_time[i]);
current_time += burst_time[i];
}
printf("Average Waiting Time: %.2f\n", (float)total_waiting_time / n);
printf("Average Turnaround Time: %.2f\n", (float)total_turnaround_time / n);
return 0;
}
content_copyCOPY
Comments