/* Resultater ut fra kamptabell */ var navn: Array = ["RBK", "Brann", "Freidig"]; // Resultattabell: rader er hjemmelag, kolonner er bortelag var resultater: Array = [ ["-", "H", "H"], ["U", "-", "H"], ["H", "U", "-"] ]; // Poengtabell: // Lagt inn objekter istedenfor bare poengsum, // for å kunne sortere resultatlisten til slutt var poeng: Array = [ {lag: "RBK", poengsum: 0}, {lag: "Brann", poengsum: 0}, {lag: "Freidig",poengsum: 0} ]; // Regner ut alle poengene og legger i poengtabellen function beregnPoeng():void { var l: int = poeng.length; //Finner antall lag var resultat: String = ""; for (var h:int=0;h<l;h++) { //For alle hjemmelag for (var b:int=0;b<l;b++){ //For alle bortelag resultat = resultater[h][b]; if( resultat == "H" ) { poeng[h]["poengsum"]+=3; }else if( resultat == "U" ) { poeng[h]["poengsum"]++; poeng[b]["poengsum"]++; }else if( resultat == "B" ) { poeng[b]["poengsum"]+=3; }//if }//for b }//for h }//beregnPoeng() // Eksempel på funksjon som regner ut poeng for // et bestemt lag. // Kan brukes av en modifisert beregnPoeng()-funksjon function beregnPoengForLag(r: Array,lag: String):int { var indeks: int = navn.indexOf(lag); var poeng: int = 0; var resultat: String = ""; // Poeng i hjemmekamper: for(var b:int;b<r.length;b++) { //mot alle bortelag resultat = r[indeks][b]; if( resultat == "H" ) { poeng+=3; }else if( resultat == "U" ) { poeng++; }//if }//for h // Poeng i bortekamper for(var h:int;h<r.length;h++) { //mot alle hjemmelag resultat = r[h][indeks]; if( resultat == "B" ) { poeng+=3; }else if( resultat == "U" ) { poeng++; }//if }//for h return poeng; }//beregnPoengForLag() // Alternativ beregnPoeng()-funksjon som bruker // beregnPoengForLag() function beregnPoeng2():void { for(var lag:int = 0;lag<poeng.length;lag++){ poeng[lag]["poengsum"]= beregnPoengForLag(resultater,poeng[lag]["lag"]); }//for }//beregnPoeng2() /// --- Hovedprogram --- /// beregnPoeng(); var liste: Array = poeng.sortOn("poengsum",Array.NUMERIC+Array.DESCENDING); for(var lag:int=0;lag<poeng.length;lag++) { trace(liste[lag]["lag"] + ", " + poeng[lag]["poengsum"]); }//for trace("\nTest av alternative funksjoner:\n"); trace("RBK fikk " + beregnPoengForLag(resultater, "RBK") + " poeng"); trace("Brann fikk " + beregnPoengForLag(resultater,"Brann") + " poeng\n"); beregnPoeng2(); liste = poeng.sortOn("poengsum",Array.NUMERIC+Array.DESCENDING); for(lag=0;lag<poeng.length;lag++) { trace(liste[lag]["lag"] + ", " + poeng[lag]["poengsum"]); }//for |
RBK, 7 Brann, 5 Freidig, 4Test av alternative funksjoner:RBK fikk 7 poeng Brann fikk 5 poengRBK, 7 Brann, 5 Freidig, 4