for those who don't know Round Robin algorithm
The above code finds & prints turn-around time & average turn around time for the given data.
Program
import java.util.Scanner; //@author Naved Momin naved.spartans.rocks75@gmail.com/navedmomin10@gmail.com public class SimpleRR { int [] temp; int commBT, k, tq; int[][] d; int btcache; void getData( ){ Scanner s = new Scanner(System.in); System.out.println( "enter no. of process"); int pcount = s.nextInt(); d = new int[pcount][2]; temp = new int[pcount]; System.out.println( "enter BT"); for (int i = 0; i < pcount; i++) { d[i][0] = i; int m = s.nextInt(); d[i][1] = m; commBT += m; } System.out.println( "enter TQ "); tq = s.nextInt(); start(); display( ); } void start( ){ for (int i = 0; i < d.length; i++) { int bt = d[i][1]; if( bt > 0){ if( bt <= tq){ temp[i] = btcache+bt; btcache = temp[i]; k += bt; bt -= bt; } else{ temp[i] = btcache+tq; btcache = temp[i]; bt -= tq; k += tq; } d[i][1] = bt; } } if( k!= commBT) start(); } public static void main(String[] args) { // TODO code application logic here SimpleRR r = new SimpleRR(); r.getData(); } private void display() { float val = 0; int c = 1; for (int i : temp) { System.out.println( "BT for process " + c + " is " + i ); val += i; c++; } System.out.println( "avg BT = " + val/temp.length); } }
The above code finds & prints turn-around time & average turn around time for the given data.
No comments:
Post a Comment