import java.util.Random; import easyIO.*; class Omgang { Skihopper[] startliste; Skihopper[] rekkeflg; int antall; boolean f?rsteomgang; Random tall = new Random(); /** * Constructor for objects of class Omgang */ Omgang( Skihopper[] startliste, boolean f?rsteomgang){ this.startliste = startliste; this.f?rsteomgang = f?rsteomgang; rekkeflg = new Skihopper[startliste.length]; } void skrivMeny(){ System.out.println(); System.out.print("*** MENY "); if( f?rsteomgang ) System.out.println("1. OMGANG ***"); else System.out.println("2. OMGANG ***"); System.out.println("0. Tilbake til hovedmenyen"); System.out.println("1. Registrer nytt hopp"); System.out.println("2. List gjenst?ende hoppere"); System.out.println("3. Resultatliste"); System.out.println("4. Simuler resten av omgangen"); System.out.println(); } void kommandol?kke(In tast){ int valg; skrivMeny(); do { System.out.print("\nValg (9 for meny): "); valg = tast.inInt(); switch(valg){ case 0: System.out.println(); break; case 1: nesteHopp(); break; case 2: skrivGjenst?ende(); break; case 3: skrivResultat(); break; case 4: simulerOmgang(); break; case 9: skrivMeny(); break; default: System.out.println("Du tastet feil"); } } while (!(valg == 0)); } /** * An example of a method - replace this comment with your own * * @param y a sample parameter for a method * @return the sum of x and y */ void nesteHopp(){ if( antall >= startliste.length ) return; Skihopper aktiv = startliste[antall]; System.out.println(" Hopper nr. "+ (antall+1) +": "+ aktiv.navn); Hopp h = new Hopp(); registrerHopp(h); } void registrerHopp( Hopp h ) { Skihopper aktiv = startliste[antall]; aktiv.nyttHopp(h,f?rsteomgang); int i = antall++; while( i>0 && rekkeflg[i-1].poengsum(f?rsteomgang) < aktiv.poengsum(f?rsteomgang) ){ rekkeflg[i] = rekkeflg[i-1]; i--; } rekkeflg[i] = aktiv; System.out.print( " "+ aktiv.navn +": "); System.out.println( aktiv.poengsum(f?rsteomgang) +" poeng [nr. "+ (i+1) +"]\n"); } void skrivResultat(){ int nr = 0; for( int i=0; i