for
-løkker#
Læringsmål
Kunne bruke
for
-løkker medrange
-funksjonen for å lage en liste med tall.Kunne bruke
for
-løkker til å gjenta én eller flere kodelinjer et bestemt antall ganger.
for
-løkker for å lage tallfølger#
En for
-løkke er noe som kan brukes til å lage en liste med tall. Dette er det første vi skal se på.
Utforsk 1
Her skal du bli kjent med range
-funksjonen som ofte brukes sammen med for
-løkker.
Under vises tre eksempler på programkoder som bruker range(a, b, c)
-funksjonen til å lage en tallfølge.
Kjør programmene og se på utskriften deres.
Lag en hypotese om hva tallene
a
,b
ogc
bestemmer irange(a, b, c)
.Test hypotesen din nedenfor.
Test hypotesen din her når du er klar!
Les programmet under og forutsi hva programmet skriver ut basert på hypotesen din.
Skriv inn under og sjekk!
Se på oppsummeringen nedenfor før du går videre!
Oppsummering: for
-løkker med range(a, b, c)
Når vi bruker range
-funksjonen til å lage en tallfølge, kan vi skrive
for x in range(start, stopp, steglengde):
# kode som skal gjentas
x
kalles for en løkkevariabel. Den opprettes og endres på automatisk avfor
-løkka.start
er det første tallet i listen.stopp
er stoppekriteriet. Vi stopper alltid før dette tallet.steglengde
er hvor mye vi skal endre på løkkevariabelenx
på hver runde i løkken.
Eksempel |
Liste med tall |
---|---|
|
\(1, 2, 3, 4\) |
|
\(1, 3, 5, 7, 9\) |
|
\(5, 4, 3, 2\) |
Quiz 1
Underveisoppgave 1
Les programmet under og forutsi hva programmet skriver ut.
Skriv inn forutsigelsen din og sjekk!
Les programmet under og forutsi hva programmet skriver ut.
Skriv inn forutsigelsen din og sjekk!
Les programmet under og forutsi hva programmet skriver ut.
Skriv inn forutsigelsen din og sjekk!
Les programmet under og forutsi hva programmet skriver ut.
Skriv inn forutsigelsen din og sjekk!
Underveisoppgave 2
Fyll ut programmet slik at det skriver ut tallfølgen
Fasit
1for x in range(1, 11, 3):
2 print(x)
Fyll ut programmet slik at det skriver ut tallfølgen
Fasit
1for x in range(-4, 13, 4):
2 print(x)
Fyll ut programmet slik at det skriver ut tallfølgen
Fasit
1for x in range(0, 501, 100):
2 print(x)
Fyll ut programmet slik at det skriver ut tallfølgen
Fasit
1for x in range(15, -16, -6):
2 print(x)
Underveisoppgave 3
Lag et program som skriver ut alle partall under \(20\).
Partallene kan beskrives med formelen
Lag et program som bruker denne formelen og en for
-løkke til å skrive ut de 15 første partallene.
Lag et program som skriver ut alle oddetall under \(20\).
Oddetallene kan beskrives med formelen
Lag et program som bruker denne formelen og en for
-løkke til å skrive ut de 15 første oddetallene.
Utforsk 2
Nedenfor vises tre eksempler på programmer som bruker range
-funksjonen som range(a, b)
.
Kjør programmene og se på utskriften deres.
Lag en hypotese om hva tallene
a
ogb
bestemmer irange(a, b)
.Test hypotesen din nedenfor.
Test hypotesen din her når du er klar!
Les programmet under og forutsi hva programmet skriver ut basert på hypotesen din.
Skriv inn under og sjekk!
Oppsummering: for
-løkker med range(a, b)
for y in range(start, stopp):
# kode som skal gjentas
start
er det første tallet i listen.stopp
er stoppekriteriet. Vi stopper alltid før dette tallet.steglengde
er satt fast til1
som standardverdi her.y
kalles for løkkevariabelen fordi den lages av løkka og endres for hver runde i løkka automatisk.
Eksempel |
Liste med tall |
---|---|
|
\(1, 2, 3, 4\) |
|
\(1, 2, 3, 4, 5, 6, 7, 8, 9\) |
|
Ingen tall lages |
for
-løkker for å gjenta noe#
En annen vanlig måte å jobbe med for
-løkker på, er at man ønsker å gjenta en eller flere utregninger et bestemt antall ganger. Dette skal du se nærmere på i Utforsk 3.
Utforsk 3
Her skal du bli kjent med hvordan for
-løkker kan brukes til å gjenta en eller flere kodelinjer et bestemt antall ganger.
Under vises tre eksempler på programmer som bruker for
-løkker med kun ett tall i range
-funksjonen.
Kjør eksempelkodene og se på utskriften. Lag en hypotese om hvordan denne typen for
-løkker fungerer.
Skriv inn hypotesen din her når du er klar!
En tallfølge er en sekvens av tall som følger en bestemt regel. For eksempel er \(2, 5, 8, 11\) en tallfølge som øker med \(3\) for hvert tall.
Under vises tre kodeeksempler som bruker for
-løkker til å lage bestemte tallfølger. Kjør programmene og se på hvilke tallfølger de gir. Bruk de tre kodeeksemplene til å
formulere en hypotese på hvordan for
-løkker du kan lage tallfølger med for
-løkker.
Test hypotesen din her når du er klar!
Les programmet under og forutsi hva programmet skriver ut basert på hypotesen din.
Skriv inn under og sjekk!
Merknad: bruk av _
i for
-løkker
I kodeeksemplene her vil du se at løkkevariabelen er _
. Det er vanlig å bruke _
som løkkevariabel når vi ikke bruker løkkevariabelen til å utføre noen handler. Typisk betyr dette at for
-løkka bare skal gjenta noe et bestemt antall ganger og det spiller ingen rolle hva løkkevariabelen sin er verdi er underveis. Det holder bare styr på hvor mange ganger løkka har kjørt og når den skal stoppe.
Oppsummering: Utforsk 3
Vi kan gjenta noen kodelinjer et bestemt antall ganger ved å skrive:
1for x in range(N):
2 # Noen kodelinjer her. Disse gjentas `N` ganger.
Eksempel |
Tall |
Beskrivelse |
---|---|---|
|
\(0, 1, 2\). |
3 gjentakelser. |
|
\(0, 1, 2, 3, 4\) |
5 gjentakelser. |
|
Ingen tall |
Ingen gjentakelse. |
Når vi skal gjenta noen kodelinjer et bestemt antall ganger, men ikke skal bruke løkkevariabelen til noe, skriver vi:
1# bruker `_` som løkkevariabel fordi den ikke brukes i utregninger.
2for _ in range(N):
3 # Noen kodelinjer her. Disse gjentas `N` ganger.
Eksempel |
Beskrivelse |
---|---|
|
Gir 3 gjentakelser. |
|
5 gjentakelser. |
|
Ingen gjentakelser. |
Quiz 2
Ta quizen!