Total fremgang
0%
1.8: Øvelser bestått0 av 0

0% fullført

Lærebok/Kapittel 1.8

Kapittel 1.8

While-løkker

I dette kapitlet skal du lære om repetisjon med while-løkker, og hvordan du bruker break og continue for å kontrollere løkkeflyt.

While-løkker
Kapittel 1.8: While-løkker
Se denne videoen før du starter med kapitlet for en best mulig introduksjon.

Hva er en while-løkke?

En while-løkke lar oss gjenta kode så lenge en betingelse er sann. Dette er nyttig når vi ikke vet på forhånd hvor mange ganger vi må gjenta noe.

Eksempel: Enkel while-løkke
Python
Loading...
Oppgave 1.28 (while_kopi.py)
Kopier koden i eksempelet over og kjør koden slik at du får samme utskrift som i eksempelet. Se nøye på bildet i starten av delkapittelet. Bruk bildet til å forstå hvordan while-løkken fungerer.
Lett
Python
Loading...
Løsningsforslag Oppgave 1.28
Se videoløsning for denne oppgaven.

While-løkker med brukerinput

While-løkker er perfekte for programmer som skal fortsette til brukeren sier stopp, for eksempel menyer eller spill.

Eksempel: Meny med while-løkke
Python
Loading...
Oppgave 1.29 (while.py)
Begynn med å definere a = 0. Lag deretter en while-løkke som går så lenge a < 7. I løkken skriv ut "Dette er gøy" hver gang løkken kjører. La a øke med 2 for hver gjennomgang av løkken.
Lett
Python
Loading...
Løsningsforslag Oppgave 1.29
Se videoløsning for denne oppgaven.

Break og continue

break og continue gir oss mer kontroll over løkker.

break
Avslutter løkken umiddelbart, selv om betingelsen fortsatt er sann. Brukes når vi har funnet det vi leter etter.
continue
Hopper over resten av denne iterasjonen og går til neste. Brukes når vi vil hoppe over visse verdier.

Break - Avslutt løkken

Eksempel: Break
Python
Loading...

Continue - Hopp over

Eksempel: Continue
Python
Loading...
Oppgave 1.30 (while_evig.py)
a

Lag din egen uendelige løkke. Når du kjører programmet husk at ctrl+c bryter kjøringen (Du må klikke deg inn på konsollen før du trykker).

b

Gjør en endring i programmet ditt slik at vilkåret blir oppfylt etter løkken har kjørt 3 ganger.

Medium
Python
Loading...
Løsningsforslag Oppgave 1.30
Se videoløsning for denne oppgaven.
Oppgave 1.31 (dobling_kopi.py)

(Utfordring)

a

Skriv av eksempelet ovenfor og prøvekjør programmet for å sjekke at det virker som det skal.

b

Gjør en endring i koden slik at programmet skriver ut hvor mange ganger ett lite tall må triples før det er større enn eller lik det store tallet.

c

Gjør endringer i programmet slik at du nå ser hvor mange ganger et stort tall må halveres for å få det mindre enn et lite tall.

Vanskelig
Python
Loading...
Løsningsforslag Oppgave 1.31
Se videoløsning for denne oppgaven.
Oppgave 1.32 (while_epsilon.py)

(Utfordring +)

a

Sett x = 0, epsilon = 1 og definer en funksjon f(x) som returnerer funksjonen -5*x+302.

b

Vi ønsker først å finne ut hva x minst må være for at funksjonen skal bli mindre enn eller lik 0. Lag en while-løkke som kjører så lenge f(x) ≥ 0. Inne i while løkken kan du la verdien av x øke med epsilon for hver gang løkken kjøres.

c

Etter while løkken bryter la programmet skrive ut: "Funksjonen har ett nullpunkt imellom", (x - epsilon), "og", (x)

d

Sett nå epsilon = 0.5 og kjør programmet igjen. Er svaret nå annerledes? Prøv med epsilon = 0.1, 0.01 og 0.001.

Vanskelig
Python
Loading...
Løsningsforslag Oppgave 1.32
Se videoløsning for denne oppgaven.

Oppsummering

While-løkker gjentar kode så lenge betingelsen er sann

Pass på at løkken til slutt stopper (ikke uendelig løkke)

break avslutter løkken umiddelbart

continue hopper til neste iterasjon

While-løkker er perfekte for menyer og gjentatt input