AT[j]) { int temp = AT[i]; "> AT[j]) { int temp = AT[i]; "> AT[j]) { int temp = AT[i]; ">
import java.util.Scanner;
public class FCFS {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 
		        Scanner sc = new Scanner(System.in);

		        System.out.print("Enter number of processes: ");
		        int n = sc.nextInt();

		        int[] pid = new int[n];
		        int[] AT = new int[n];
		        int[] BT = new int[n];
		        int[] CT = new int[n];
		        int[] TAT = new int[n];
		        int[] WT = new int[n];

		        
		        for (int i = 0; i < n; i++) {
		            System.out.print("Enter process ID: ");
		            pid[i] = sc.nextInt();
		            System.out.print("Enter arrival time: ");
		            AT[i] = sc.nextInt();
		            System.out.print("Enter burst time: ");
		            BT[i] = sc.nextInt();
		        }

		        
		        for (int i = 0; i < n; i++) {
		            for (int j = i + 1; j < n; j++) {
		                if (AT[i] > AT[j]) {
		                    int temp = AT[i];
		                    AT[i] = AT[j];
		                    AT[j] = temp;
		                    
		                    temp = BT[i]; 
		                    BT[i] = BT[j];
		                    BT[j] = temp;
		                    
		                    temp = pid[i]; 
		                    pid[i] = pid[j]; 
		                    pid[j] = temp;
		                }
		            }
		        }

		        
		        for (int i = 0; i < n; i++) {
		            if (i == 0)
		                CT[i] = AT[i] + BT[i];
		            else {
		                if (CT[i - 1] < AT[i])
		                    CT[i] = AT[i] + BT[i];
		                else
		                    CT[i] = CT[i - 1] + BT[i];
		            }

		            
		        }
		        
		        int totalTAT=0;
		        int totalWT=0;
		        
		        for(int i=0;i<n;i++) {
		        	TAT[i]=CT[i]-AT[i];
		        	WT[i]=TAT[i]-BT[i];
		        	totalTAT+=TAT[i];
		        	totalWT+=WT[i];
		        }

		        for (int i = 0; i < n - 1; i++) {
		            for (int j = 0; j < n - 1 - i; j++) {
		                if (pid[j] > pid[j + 1]) {
		                    
		                    int temp = pid[j];
		                    pid[j] = pid[j + 1];
		                    pid[j + 1] = temp;

		                    temp = AT[j];
		                    AT[j] = AT[j + 1];
		                    AT[j + 1] = temp;
		                    
		                    temp = BT[j];
		                    BT[j] = BT[j + 1];
		                    BT[j + 1] = temp;

		                    
		                    temp = CT[j];
		                    CT[j] = CT[j + 1];
		                    CT[j + 1] = temp;

		                   
		                    temp = TAT[j];
		                    TAT[j] = TAT[j + 1];
		                    TAT[j + 1] = temp;

		                   
		                    temp = WT[j];
		                    WT[j] = WT[j + 1];
		                    WT[j + 1] = temp;
		                }
		            }
		        

		        
		        
		        }
		        System.out.println("\\nPID\\tAT\\tBT\\tCT\\tTAT\\tWT");
		        for ( int i = 0; i < n; i++) {
		            System.out.println(pid[i] + "\\t" + AT[i] + "\\t" + BT[i] + "\\t" +
		                               CT[i] + "\\t" + TAT[i] + "\\t" + WT[i]);
		        
		        
		    }
		
	
	double avgTAT = (double) totalTAT / n;
    double avgWT = (double) totalWT / n;
    
    System.out.printf("\\nAverage Turnaround Time: "+ avgTAT);
    System.out.printf("\\nAverage Waiting Time: "+ avgWT);

    sc.close();
}
}

	

 

image.png