IT2 - 09.04.2015

Løsningsskisser


Oppgave 1

(Som er lik eksamensoppgave 2 høsten 2014, med trykkfeil i utregningsveiledningen og det hele...)

/*

	Oppgave 1 - Prøve 09.04.2015

	(Tilsvarer eksamensoppgave 2 høsten 2014)

	

	Komponenter satt opp interaktivt i Flash:

		type_kjoring_CB:	ComboBox

		antall_km_Ns:		Numeric Stepper

		pris_per_liter_Ns:	Numeric Stepper

		beregn_Btn:		Button

		penger_spart_Tf:	TextField (TextInput)

*/



// Konstanter for test av type kjøring:

const	BYKJORING:               int    = 0;

const	BLANDET_KJORING:         int    = 1;



// Andre konstanter. (Lurt å samle her istedenfor rundt i koden!)

const	BENSINFORBRUK:           Number = 0.65;

const	PROSENT_BYKJORING:       Number = 0.1;

const	PROSENT_BLANDET_KJORING: Number = 0.05;



// Henger på lytterfunksjon:

beregn_Btn.addEventListener(MouseEvent.CLICK, beregnKlikket);



// Lytterfunksjon som utfører beregning:

function beregnKlikket(evt: MouseEvent): void {

	

	trace("Beregn-knappen klikket!");			//debug

	

	// Hent verdier fra brukergrensesnitt:

	var pris: Number = pris_per_liter_Ns.value;

	var km:   Number = antall_km_Ns.value;

	

	trace("Pris/liter: " + pris + " km: "+ km);  //debug



	// Utregninger:

	var normalforbruk: Number = km/10*pris*BENSINFORBRUK;

	var besparelse: Number;

	

	if( type_kjoring_Cb.selectedIndex == BYKJORING ) {

		besparelse = normalforbruk*PROSENT_BYKJORING;

	}else{

		besparelse = normalforbruk*PROSENT_BLANDET_KJORING;

	}//if

	

	// Send resultat til brukergrensesnitt:

	penger_spart_Tf.text = besparelse.toFixed(2);

	

}//beregnKlikket()



/*

Kan lage testverdier i regneark:

1 A     B           C               D

2 km:	pris/liter:	type kjøring:	Resultat:

3 50	14	        0.05	        2.275     <--Formel som

4 50	14	        0.1	        4.55         kopieres nedover:    

5 500	15	        0.05	        24.375     =A3/10*B3*C3*0.65   

6 500	15	        0.1	        48.75

7           ...

*/

 

Oppgave 2

/*

	Bruk SoundChannel for å kunne starte og stoppe lyd flere ganger  

    Se side 251, 255 og 256



   (Bruk SoundTransform for å endre volum, balanse og slike ting.)

   (Se side 257.)



	Komponenter:

		Button:      navn:   start og stopp



*/



var lyd = new Sound();		        // Streaming fra fil

lyd.load( new URLRequest("lyd.mp3"));



// Alternativ: De to linjene over kan erstattes med:

//    var lyd: Sound = new MinLyd();

// hvis du har lagt filen i Library (File, Import to Library)

// og gitt lyden klassenavnet MinLyd i Linkage i Library



var sc: SoundChannel;



start.addEventListener(MouseEvent.CLICK, startKlikket);

stopp.addEventListener(MouseEvent.CLICK, stoppKlikket);



function startKlikket(evt: MouseEvent) {

	if(sc != null){

		sc.stop();

	}//if

	sc=lyd.play();

}//startKlikket()



function stoppKlikket(evt: MouseEvent) {

	if(sc != null) {

		sc.stop();

	}//if

}//stoppKlikket()

Oppgave 3

/*

	Prøve 09.04.2015 - Oppgave 3

	

	Komponenter: 

		FLVPlayback 2.5:

			navn: videospiller

			.source:   "video.f4v"

		Numeric Stepper:   

			navn: posisjon

			value, minimum, maximum: 0, 1, 100  

*/



// Henger lytterfunksjon på posisjon

posisjon.addEventListener(Event.CHANGE, posisjonEndret);



/*

	Lytterfunksjon

	Endrer posisjon i videofilen

*/

function posisjonEndret(evt: Event): void {

	trace(posisjon.value);		// debug

	videospiller.seekPercent(posisjon.value);

}//posisjonEndret()