0% found this document useful (0 votes)
27 views2 pages

Os 1

This C++ program calculates the average waiting time and turnaround time for processes. It takes the process IDs and their burst times as input. It uses functions to calculate the waiting time and turnaround time for each process. It then calculates and prints the total waiting time, total turnaround time, and average waiting and turnaround times.

Uploaded by

Jai Jadhav
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views2 pages

Os 1

This C++ program calculates the average waiting time and turnaround time for processes. It takes the process IDs and their burst times as input. It uses functions to calculate the waiting time and turnaround time for each process. It then calculates and prints the total waiting time, total turnaround time, and average waiting and turnaround times.

Uploaded by

Jai Jadhav
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

#include <iostream>

using namespace std;


// Function to find the waiting time for all
// processes
void findWaitingTime(int processes[], int n, int bt[], int wt[])
{
// waiting time for first process is 0
wt[0] = 0;
// calculating waiting time
for (int i = 1; i < n; i++)
wt[i] = bt[i - 1] + wt[i - 1];
}

// Function to calculate turn around time


void findTurnAroundTime(int processes[], int n,
int bt[], int wt[], int tat[])

{
// calculating turnaround time by adding
// bt[i] + wt[i]
for (int i = 0; i < n; i++)
tat[i] = bt[i] + wt[i];
}

// Function to calculate average time


void findavgTime(int processes[], int n, int bt[])
{
int wt[n], tat[n], total_wt = 0, total_tat = 0;

// Function to find waiting time of all processes


findWaitingTime(processes, n, bt, wt);

// Function to find turn around time for all processes


findTurnAroundTime(processes, n, bt, wt, tat);
// Display processes along with all details
cout << "Processes "
<< " Burst time "
<< " Waiting time "
<< " Turn around time\n";
// Calculate total waiting time and total turn
// around time
for (int i = 0; i < n; i++)
{
total_wt = total_wt + wt[i];
total_tat = total_tat + tat[i];
cout << " " << i + 1 << "\t\t" << bt[i] << "\t "
<< wt[i] << "\t\t " << tat[i] << endl;
}

cout << "\nAverage waiting time = " << (float)total_wt / (float)n;


cout << "\nAverage turn around time = " << (float)total_tat / (float)n;
}

int main()
{
// process id's
int processes[] = {1, 2, 3};
int n = sizeof processes / sizeof processes[0];
// Burst time of all processes
int burst_time[] = {10, 5, 8};
findavgTime(processes, n, burst_time);

cout << "\nProgram by Jai Jadhav [AIDS - SE(B) - 22663]" <<endl;


return 0;
}

You might also like