/* oppgave 2 aGUI: velgsted_cb ComboBox rapport_ta TextArea *//// --- Datastruktur --- /// var plassering: Array = [ [ "A", "B" ], // A og B på Torvet [ "C", "D" ], // C og D på Schrøders plass [ "E", "F" ] // E og F på Bryggeplassen ];var stedsnavn: Array = ["Torvet", "Schrøders plass", "Bryggeplassen"];/// --- Programstruktur --- ///velgsted_cb.addEventListener(Event.CHANGE, stedBleValgt);function stedBleValgt(evt: Event): void {var stedsindeks: int = velgsted_cb.selectedIndex;rapport_ta.text = stedsnavn[stedsindeks] + ":\n" + plassering[stedsindeks].length + "\n"+ plassering[stedsindeks];}//stedblevalgt()
/* Oppgave 2 b Lage funksjon oppdatering() *//// --- Datastruktur --- ///var plassering: Array = [ [ "A", "B" ], // A og B på Torvet [ "C", "D" ], // C og D på Schrøders plass [ "E", "F" ] // E og F på Bryggeplassen ];var stedsnavn: Array = ["Torvet", "Schrøders plass", "Bryggeplassen"];// Oppdater-funksjonen: function oppdater(sykkelnavn:String, nyttsted: String): void { var stedsindeks: int = -1; var sykkelindeks: int = -1;var nystedsindeks: int = stedsnavn.indexOf(nyttsted);// Finn sted: (Bør egentlig bruke while og stoppe når funnet) for(var i:int = 0; i < plassering.length; i++ ) { if( plassering[i].indexOf(sykkelnavn) >= 0 ) { stedsindeks = i; }//if }// for alle stederif(stedsindeks >= 0) { sykkelindeks= plassering[stedsindeks].indexOf(sykkelnavn); plassering[stedsindeks].splice(sykkelindeks,1); if(nystedsindeks >= 0) { plassering[nystedsindeks].push(sykkelnavn); }else { plassering[stedsindeks].push(sykkelnavn); //sett tilbake }//if }else{ trace("Fant ikke sykkel..."); } }//oppdater()/// --- Testkode: --- ///function visplassering():void { for each(var linje in plassering) { trace(linje); };//for trace(); };oppdater("A","Bryggeplassen"); visplassering();oppdater("E","Schrøders plass"); visplassering();oppdater("D","Schrøders plass"); visplassering();oppdater("F","Schrøders plass"); visplassering();oppdater("A","Torvet"); visplassering();// test av feil: oppdater("X", "Bryggeplassen"); visplassering();oppdater("B", "Solhøyden"); visplassering();
import flash.events.Event;/* Oppgave 3:GUI: velgsted_cb ComboBox velgsykkel_cb ComboBox flytt_btn rapport_ta TextArea *//// --- Datastruktur --- ///var plassering: Array = [ [ "A", "B" ], // A og B på Torvet [ "C", "D" ], // C og D på Schrøders plass [ "E", "F" ] // E og F på Bryggeplassen ];var stedsnavn: Array = ["Torvet", "Schrøders plass", "Bryggeplassen"];var sykkelnavn: Array = ["A","B","C","D","E","F"];var kjorelengder: Array = [0,0,0,0,0,0];var avstander: Array = [ [ 0, 1.5, 1], [ 1.5, 0 , 2], [ 1, 2 , 0] ];/// --- Programstruktur --- ///flytt_btn.addEventListener(MouseEvent.CLICK,flyttSykkel);function flyttSykkel(evt: Event): void {var stedsindeks:int = -1; var sykkelindeks:int = velgsykkel_cb.selectedIndex; var sykkelnavn: String = sykkelnavn[sykkelindeks]; var nystedsindeks:int = velgsted_cb.selectedIndex;// Finn sted: (burde vært egen funksjon og burde brukt while) for(var i:int = 0; i < plassering.length; i++ ) { if( plassering[i].indexOf(sykkelnavn) >= 0 ) { stedsindeks = i; }//if }// for alle stedervar kjorelengde: Number = 3 * avstander[stedsindeks][nystedsindeks];kjorelengder[sykkelindeks] += kjorelengde;oppdater(sykkelnavn[sykkelindeks],stedsnavn[stedsindeks]);rapport_ta.text = sykkelnavn[sykkelindeks] + " har gått: \n" + kjorelengder[sykkelindeks] + " km.";visplassering(); trace(kjorelengder); }//flyttSykkel()// Fra oppgave 2b: function oppdater(sykkelnavn:String, nyttsted: String): void {... (se oppgave 2b.)}//oppdater()/// --- Testkode --- /// function visplassering():void {... (se oppgave 2b.)};