Untitled
unknown
c_cpp
9 months ago
3.2 kB
17
Indexable
wt[0] = 0;
for (i = 1; i < n; i++) {
wt[i] = wt[i - 1] + bt_copy[i - 1];
}
// Turnaround time = burst time + waiting time
for (i = 0; i < n; i++) {
tat[i] = bt_copy[i] + wt[i];
}
printf("\n--- SJF Scheduling ---\n");
printf("Process\tBurst Time\tWaiting Time\tTurnaround Time\n");
for (i = 0; i < n; i++) {
printf("P%d\t%d\t\t%d\t\t%d\n", i + 1, bt_copy[i], wt[i], tat[i]);
total_wt += wt[i];
total_tat += tat[i];
}
printf("Average Waiting Time = %.2f\n", total_wt / n);
printf("Average Turnaround Time = %.2f\n", total_tat / n);
}
int main() {
int n, i;
printf("Enter number of processes: ");
scanf("%d", &n);
int bt[n];
printf("Enter burst time for each process:\n");
for (i = 0; i < n; i++) {
printf("P%d: ", i + 1);
scanf("%d", &bt[i]);
}
FCFS(n, bt);
SJF(n, bt);
return 0;
}Editor is loading...
Leave a Comment