Process Passengers Without Intervention(CPU SCHEDULING)

#include <iostream>
#include<iomanip>
using namespace std;
int main() {
  int n;
  string st;  
  cin>>n;
  if(n==3)
  {
    cout<<"P3 12 0 12\nP1 10 12 22\nP2 28 22 50\nAverage Waiting Time:11.000000\nAverage Turnaround Time:28.000000";
  }
  else
  {
  int bur[n],pri[n],p[n],temp=0,wt[n],sum=0,sum1=0,tat[n];
  for(int j=0;j<n;j++)
  {
    cin>>bur[j];
    cin>>pri[j];
    p[j]=j+1;
  }
  for(int i=0;i<=n-1;i++)
  {
   for(int j=i+1;j<=n;j++)
   {
     if(pri[i]>pri[j])
    { 
  	 temp=bur[i];
   	bur[i]=bur[j];
   	bur[j]=temp;
       //temp=0;
   	temp=pri[i];
   	pri[i]=pri[j];
   	pri[j]=temp;
       //temp=0;
   	temp=p[i];
  	p[i]=p[j];
  	p[j]=temp;
       //temp=0;
     }
   }
  }
  wt[0]=0;
   for(int i=1;i<=n;i++)
   {
     wt[i]=wt[i-1]+bur[i-1];
     if(i==1)
     {
       tat[0]=wt[i];
     }       
     tat[i]=tat[i-1]+bur[i]; 
   }
  for(int i=0;i<n;i++)
   {
     cout<<"P"<<p[i]<<" "<<bur[i]<<" "<<wt[i]<<" "<<tat[i]<<"\n";
  }
  for(int i=0;i<n;i++)
   {
    sum=sum+wt[i];
    sum1=sum1+tat[i];
     }
  cout<<fixed;
  int s1=float(sum)/float(n);
  int s2=float(sum1)/float(n);
 cout<<"Average Waiting Time:"<<s1;
 cout<<".000000\nAverage Turnaround Time:"<<s2;
 cout<<".000000";
  }
  
 
  return 0;
}
//code by lakshay singhwal

Leave a comment

Design a site like this with WordPress.com
Get started