if
-else
-setninger#
Læringsmål: if
-else
-setninger
Kunne forklare hva en betingelse er, og sette opp betingelser i Python.
Kunne bruke
if
-else
-setninger i Python.
I mange tilfeller ønsker vi å skrive et program som gjør noe hvis én ting er sant, og noe annet hvis det er usant. Dette kan vi gjøre ved å bruke if
-else
-setninger.
Utforsk 1
Under vises et kort interaktivt program.
Utforsk og kjør programmet, og forklar hva programmet gjør.
Betingelser#
Før vi ser mer på hvordan en if
-else
-setning fungerer, skal vi se på hva en betingelse er.
Betingelser
En betingelse er en påstand som kan være sann eller usann. En betingelse er en boolsk variabel som enten er True
(sann) eller False
(usann).
Vi tar et eksempel:
Eksempel 1: betingelser
I programmet fra utforsk 1 har vi brukt betingelsen x > 0
for å dele opp programmet.
x > 0
blir True
hvis x
er større enn 0, og False
ellers.
Så kan du få utforske litt mer:
Utforsk 2
Under vises et interakivt program som skriver ut forskjellige betingelser.
Les programmet og forutsi hva programmet skriver ut.
Skriv inn hypotesen din og sjekk svaret under!
Hvis du endrer på verdien til a
og b
slik at betingelsen a > b
er True
, hvilke av de andre betingelsene vil da også være True
?
Tenk ut først – prøv deretter ut med programmet!
Hvilke verdier kan du sette a
og b
slik at flest mulig betingelser blir True
?
I underveisoppgave 2 har vi brukt det vi kaller sammenlikningsoperatorer for å sette opp betingelser. Disse operatorene sammenlikner to verdier og returnerer True
eller False
.
Sammenlikningsoperatorer
Vi har følgende boolske operatorer i Python:
Operator |
Eksempel |
Forklaring |
---|---|---|
|
|
Er |
|
|
Er |
|
|
Er |
|
|
Er |
|
|
Er |
|
|
Er |
if
-elif
-else
-setninger#
Noen ganger ønsker å splitte programmet vårt i flere enn to deler. Da kan vi bruke en elif
-setning (står for “else if”):
Utforsk 3
Under vises et program som bruker en if
-elif
-else
-setning.
Kjør programmet med varetype som “mat” og sett prisen til 50.
Kan du forutsi verdien programmet skriver ut? Kjør programmet og sjekk svaret ditt!
Hva blir utskriften hvis du endrer varetype til “reise”?
Sjekk svaret ditt med programmet!
Endre varetype til “annet” og prisen til 100.
Hva blir utskriften? Sjekk svaret ditt med programmet!
Oppgaver#
Oppgave 1
Programmet under løser en likning.
Les programmet og forutsi hva programmet skriver ut. Skriv inn hypotesen din og sjekk svaret!
Juster programmet slik at det løser likningen
Juster programmet slik at det løser likningen
Oppgave 2
Skriv et program som løser likningen
Hint
Bruk samme strategi som i oppgave 1.
Oppgave 3
Programmet under sjekker om en trekant med sidelengder \(a\), \(b\) og \(c\) er en rettvinklet trekant.
Les programmet under og forutsi hva programmet skriver ut.
Skriv inn hypotesen din under og sjekk svaret!
For å sjekke om flere betingelser er oppfylt samtidig med en if
-test, kan man skrive
if betingelse1 and betingelse2:
...
Juster programmet slik at det sjekker om trekanten er rettvinklet uten å anta at \(a\) og \(b\) er de to katetene.
Prøv ut programmet med forskjellige verdier for \(a\), \(b\) og \(c\).