Hopp til innhald
SubjectMaterialFagstoff

Fagartikkel

Lykkjer

Ein av styrkane ved programmering er at du kan programmere datamaskina til å gjenta den same operasjonen fleire gonger. Dersom du skal skrive kode som gjentek seg sjølv, bruker du lykkjer ("loops" på engelsk). Vi skil i hovudsak mellom for- og while-lykkjer.

FooterHeaderIconFooter iconLK20
Ei lykkje i ein berg-og-dal-bane med ei vogn med menneske som køyrer hurtig rundt. Foto.

Ei lykkje er ein kontrollstruktur som køyrer kode eit gitt tal gonger. Vi kallar kvar gong lykkja blir køyrd for ein iterasjon ("iteration" på engelsk). Dersom lykkja blir køyrd ti gonger, seier vi at ho har ti iterasjonar.

Ofte er vi i situasjonar der vi må repetere ei handling. Dersom ei datamaskin skulle ha valt varer frå ei handleliste, hadde den måtta gå gjennom kvar enkelt vare i butikken og samanlikna ho med handlelista. Nedanfor kan du sjå eit eksempel på korleis lykkja ville ha sett ut.

Flytskjema for handlekorg. Illustrasjon.

Flytdiagrammet viser korleis ei lykkje kan fungere i eit program.

For-lykkjer

For-lykkjer bruker du dersom du ønskjer at noko skal gjenta seg sjølv eit gitt tal gonger. Nedanfor ser du eit eksempel på korleis ei slik lykkje kan sjå ut:

Javascript

1
2
3
for (let i = 0;i<10;i++) {
	// Kode som blir køyrt ti gonger
}

I dette tilfellet har vi deklarert ein variabel som heiter i. Denne variabelen bruker du som ein teljar som held oversikt over alle rundane lykkja blir køyrd. Kvar slik runde kallar vi ein iterasjon. Det neste som skjer, er at vi sjekkar om i er mindre enn 10. Dersom vilkåret er oppfylt, så blir koden køyrd. Til slutt så set vi i++, som vil seie at vi aukar variabelen i med 1. Vi kallar dette for ein inkrementering. For kvar iterasjon vil altså variabelen i auke med 1, og vi vil sjekke om i er mindre enn 10. Når variabelen i er 10 eller høgare, vil lykkja slutte å køyre.

While-lykkjer

Ei while-lykkje bruker du når du ikkje veit kor mange gonger lykkja skal gå i forkant. Ho kan òg eigne seg dersom vilkåret ikkje baserer seg på tal, eller når du ikkje veit kor mange gonger loopen skal køyre.

Javascript

1
2
3
4
5
6
let teljar = 0;

while (teljar <10) {
// Kode som køyrer ti gonger
teljar++;
}

Ein annan versjon av while-lykkja er do-while-lykkja. Då vil koden som skal køyrast, kome først og vilkåret til slutt. Dette gjer at koden køyrer minst éin gong sjølv om vilkåret er usant ("false" på engelsk).

Javascript

1
2
3
4
5
6
7
let teljar = 0;

do { 
// Kode som køyrer ti gonger
teljar++;
}
while (teljar<10) 
Sist oppdatert 26.02.2020
Skrive av Jan Frode Lindsø

Læringsressursar

Programmering