TrommeLom-funksjon i pseudokode
Lov på eksamen
- Datamaskin med programmeringsverktøy
- Lærebok, dokumentasjon og egne notater og programmer
Ikke åpent internett (bare noen utvalgte nettressurser), kommunikasjon med andre eller kunstig intelligens.
Kan den løses uten PC?
Kan løses med penn og papir. Du trenger ikke kalkulator.
Fra 2027 er det bare kalkulator og skriftlige hjelpemidler på del 2. Vurderingen er gjort med KI og kan inneholde feil.
Ta utgangspunkt i følgende pseudokode:
FUNCTION sjekkTall(n):
SET resultat TO " "
FOR hvert tall i fra og med 1 til og med n
IF i % 2 EQUAL TO 0 AND i % 3 EQUAL TO 0
SET resultat TO resultat + "TrommeLom "
ELSE IF i % 2 EQUAL TO 0
SET resultat TO resultat + "Tromm "
ELSE IF i % 3 EQUAL TO 0
SET resultat TO resultat + "Lom "
ELSE
SET resultat TO resultat + i + " "
ENDIF
ENDFOR
RETURN resultat
ENDFUNCTION
DISPLAY sjekkTall(6)
Hva vil bli vist som resultat av programmet pseudokoden over beskriver?
Fasit
1 Tromm Lom Tromm 5 TrommeLom
LøsningsforslagKI-generert
Løkken går gjennom tallene fra 1 til og med 6. For hvert tall sjekker funksjonen betingelsene i rekkefølge, og bare den første som er sann, blir brukt:
i | Delelig med 2? | Delelig med 3? | Legges til |
|---|---|---|---|
| 1 | nei | nei | 1 |
| 2 | ja | nei | Tromm |
| 3 | nei | ja | Lom |
| 4 | ja | nei | Tromm |
| 5 | nei | nei | 5 |
| 6 | ja | ja | TrommeLom |
Programmet viser derfor «1 Tromm Lom Tromm 5 TrommeLom».
Rekkefølgen på testene er viktig. Tallet 6 er delelig med både 2 og 3, og den første testen (i % 2 EQUAL TO 0 AND i % 3 EQUAL TO 0) fanger det opp før de to andre. Hadde testen for delelighet med 2 stått først, ville 6 gitt «Tromm».
De andre alternativene er feil:
- «1 2 3 4 5 6» får vi bare hvis ingen av betingelsene slår til.
- «1 TrommeLom 3 Tromm 5 Lom» og «1 Tromm 3 TrommeLom 5 Tromm» plasserer ordene på tall som ikke har de riktige faktorene. For eksempel er verken 2 eller 4 delelige med 3, så de kan ikke gi «TrommeLom».
Sensorveiledning
Oppgaven gir til sammen 1,5 poeng
1 Tromm Lom Tromm 5 TrommeLom vurderes som riktig.