IT-1 og IT-2
Det norske flagget (med påskeegg)
En oppgave
Flagget nedenfor stammer fra en oppgave som gikk ut på å kombinere flere programmeringsteknikker:
- Definere variabler og velge hensiktsmessige datatyper
- Opprette objekter (instanser) fra klasser (symboler)
- Tilordne uttrykk til variabler (blant annet farger og plassering)
- Programmere med gjentagelser (løkker)
- Programmere med valg (hvis)
Last gjerne ned flash fila NorskeFlagg.fla
ActionScript 3.0 kode
En programutvidelse
I flagget ovenfor er det lagt inn litt mer kode enn den som vises her. Klikk på flagget for å se hva som skjer. Her klarer vi å finne rad og kolonne nummer i en tabell uten å ha en Array. Det kan være nyttig å kjenne denne teknikken med bruk av int funksjonen og % (modulo).
KOL 0 | KOL 1 | KOL 2 | KOL 3 | KOL 4 | KOL 5 | |
RAD 0 | 0 | 5 | 10 | 15 | 20 | 25 |
RAD 1 | 1 | 6 | 11 | 16 | 21 | 26 |
RAD 2 | 2 | 7 | 12 | 17 | 22 | 27 |
RAD 3 | 3 | 8 | 13 | 18 | 23 | 28 |
RAD 4 | 4 | 9 | 14 | 19 | 24 | 29 |
Det er 5 rader i tabellen. Når vi dividerer tallene i KOL 2 med 5 (antall rader), vil alle resultatene bli 2 komma et eller annet. Heltallsdelen blir alltid 2:
KOL 0 | KOL 1 | KOL 2 | KOL 3 | KOL 4 | KOL 5 | |
RAD 0 | 0 | 5 | int(10/5) gir 2 |
15 | 20 | 25 |
RAD 1 | 1 | 6 | int(11/5) gir 2 |
16 | 21 | 26 |
RAD 2 | 2 | 7 | int(12/5) gir 2 |
17 | 22 | 27 |
RAD 3 | 3 | 8 | int(13/5) gir 2 |
18 | 23 | 28 |
RAD 4 | 4 | 9 | int(14/5) gir 2 |
19 | 24 | 29 |
Når vi tar modulo 5 (antall rader) av tallene i RAD 3, vil alle resultatene bli 3 (restverdien):
KOL 0 | KOL 1 | KOL 2 | KOL 3 | KOL 4 | KOL 5 | |
RAD 0 | 0 | 5 | 10 | 15 | 20 | 25 |
RAD 1 | 1 | 6 | 11 | 16 | 21 | 26 |
RAD 2 | 2 | 7 | 12 | 17 | 22 | 27 |
RAD 3 | 3%5 gir 3 |
8%5 gir 3 |
13%5 gir 3 |
18%5 gir 3 |
23%5 gir 3 |
28%5 gir 3 |
RAD 4 | 4 | 9 | 14 | 19 | 24 | 29 |
Eksempelvis så finner vi ut med int(13/5) og 13%5 at element 13 står i kolonne 2 og rad 3 i tabellen ovenfor.
Hadde elementene vært lagt ut bortover i stedet for nedover, så måtte vi delt på antall kolonner (som er 6) og byttet om int og %. Nå er det eksempelvis element nr 20 som står i 2. kolonne (20%6=2) og 3. rad (int(20/6)=3) i tabellen nedenfor.
KOL 0 | KOL 1 | KOL 2 | KOL 3 | KOL 4 | KOL 5 | |
RAD 0 | 0 | 1 | 2 | 3 | 4 | 5 |
RAD 1 | 6 | 7 | 8 | 9 | 10 | 11 |
RAD 2 | 12 | 13 | 14 | 15 | 16 | 17 |
RAD 3 | 18 | 19 |
20%6 |
21 | 22 | 23 |
RAD 4 | 24 | 25 | 26 | 27 | 28 | 29 |