Prøve i kapittel 1,2,3 og 4 - Gruppe D - 10.01.2013


Del 1 - Teori

1. To hovedtyper av feil i programmeringskode:

2.

flymaskin.gotoAndPlay(4);

3.

g.drawCircle(200,250,80);
eller
g.drawEllipse(200-80,250-80,160,160);  //Ellipse = Oval, parametere refererer til rektanglet rundt

4.

txtInntasting.x = 200;

txtInntasting.y = 300;

txtInntasting.text = "Poeng: 100";	// ... "Poeng: " + poeng, hvis poeng i en variabel poeng

txtInntasting.border = true;

5.

I variabelnavn kan vi bruke:

a .. z, A..Z, 0..9, dollartegn, underscore (lav bindestrek).
(Kan bruke æ, ø og å, men personlig unngår jeg det...)

6.

76
4.75		(De fleste programmeringsspråk vil ikke konvertere til Number og vil gi 4 isteden!)
3		19/4 = 4 og 3 til rest (19 modulo 4)
true		kaker er 19 og barn er 4, så de er forskjellige og det logiske uttryket gir true.

7.

12.45.7		Som ikke er et tall men String; "12.45.7"

8.

pris = Number( txtPris.text );
(Med kontroll av input:
var tmp = Number( txtPris.text );

if( isNaN(tmp) ) {

   pris = 0.0;

   tallfeil = true;		// En variabel som husker at det ble feil i konvertering

} else {			// og kan brukes senere til å gi feilmeldinger i tillegg.

   pris = tmp;

}//if

9.

if( bonus) {

   txtKommentar.text = "Du har fått bonus!";

} else {

   txtKommentar.text = "";

}//if

10.

a)
for( var i: int = 0; i < 5; i++) {

   trace(i);

}//for
b)
var output: String = "";
for( var i: int = 0; i < 5; i++) {

   for( var j: int = 0; j < i; j++) {

      output += "" + i;				//"" + i for å få konvertert til String

   }//for j

   output += "+n";				// linjeskift

}//for i
trace( output );

Del 2

Skisse av løsning:

Lager GUI i Flash med input-felter txtA, txtB og txtC, knapp btnBeregn og tekstfelt txtLosning.

Kode:

btnBeregn.addEventListener(MouseEvent.MOUSE_CLICK, beregn);
function beregn(): void {
   var a: Number = Number( txtA.text );

   if(isNaN(a)){ a = 0.0; }
   var b: Number = Number( txtB.text );

   if(isNaN(a)){ b = 0.0; }
   var c: Number = Number( txtC.text );

   if(isNaN(a)){ c = 0.0; }
   var x: Number = ( c - b )/a;
   // Bør i tillegg ha en sjekk på 0 i nevner og skrive ut feilmelding...
   txtLosning.text = "" + x;
}//beregn()