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

0% fullført

Lærebok/Kapittel 1.5

Kapittel 1.5

If-setninger og logiske operatorer

I dette kapitlet skal du lære om betingelser, if-elif-else, sammenligningsoperatorer og logiske operatorer for å lage programmer som tar beslutninger.

Sammenligningsoperatorer
Kapittel 1.5: If-setninger og logiske operatorer
Se denne videoen før du starter med kapitlet for en best mulig introduksjon.

Sammenligningsoperatorer

Før vi lærer om if-setninger, må vi forstå hvordan vi sammenligner verdier. Sammenligningsoperatorer gir oss en boolsk verdi (True eller False).

De vanligste sammenlikningsoperatoreneEksempel ifra konsollen
==→ Sjekker om variabler, tall eller annet er like hverandre.
In [1]: 2 == 2
Out[1]: True
!=→ Sjekker om noe ikke er likt noe annet og gir False kun hvis noe er likt.
In [2]: 2 != 3
Out[2]: True
<→ Sjekker om noe er mindre enn noe annet.
In [3]: 5 < 2
Out[3]: False
>→ Sjekker om noe er større enn noe annet.
In [4]: 5 > 2
Out[4]: True
<=→ Sjekker om noe er mindre enn eller lik noe annet.
In [5]: 2 <= 2
Out[5]: True
>=→ Sjekker om noe er større eller lik noe annet.
In [6]: 3 >= 3
Out[6]: True
Eksempel: Sammenligningsoperatorer
Python
Loading...
Oppgave 1.13 (konsolloppgave)

I denne oppgaven skal du bruke Python-konsollen for å gjennomføre.

a

Skriv inn 3==4 i konsollen. Se hva slags resultat du nå får. Prøv deretter igjen med 3==3.

b

Prøv å finn ut om de følgende utsagnene gir TRUE eller FALSE uten å skrive de inn i konsollen. Sjekk svarene dine ved å skrive de inn i konsollen. 1) "Hei" != 3 2) 5 != 9 3) 4 > 4 4) 4 <= 8 5) 99 != 98+1 6) 100 + 33 >= 98+35

Lett
Python
Loading...
Løsningsforslag Oppgave 1.13
Se videoløsning for denne oppgaven.

If-setninger

En if-setning lar oss kjøre kode kun når en betingelse er sann (True). Koden som skal kjøres må ha innrykk (indent) - vanligvis 4 mellomrom eller 1 tab.

Eksempel: Enkel if-setning
Python
Loading...
Oppgave 1.11: Sjekk partall eller oddetall (input_selv.py)
Lag et program som sjekker om et tall er partall eller oddetall. Koden har allerede linje 1: tall = int(input("Skriv inn et tall: ")) Du skal bruke modulo-operatoren (%) for å sjekke om tallet er delelig på 2. - Hvis tall % 2 == 0, er tallet et partall. Print "Tallet er et partall" - Hvis tall % 2 == 1, er tallet et oddetall. Print "Tallet er et oddetall" Bruk if og else for å sjekke begge tilfellene.
Lett
Python
Loading...
Løsningsforslag Oppgave 1.11
Se videoløsning for denne oppgaven.

If-else

Med else kan vi kjøre alternativ kode når betingelsen er usann (False). Dette gir oss to valgmuligheter: hvis betingelsen er sann, gjør dette - ellers gjør det.

Eksempel: If-else
Python
Loading...
Oppgave 1.12: Positivt eller negativt?
Lag et program som ber om et tall. Hvis tallet er større enn 0, skriv 'Tallet er positivt'. Ellers skriv 'Tallet er negativt eller null'.
Lett
Python
Loading...
Løsningsforslag Oppgave 1.12
Se videoløsning for denne oppgaven.

If-elif-else

Når vi har flere enn to alternativer, bruker vi elif (else if). Python sjekker betingelsene i rekkefølge og kjører den første som er sann.

Eksempel: If-elif-else
Python
Loading...
Oppgave 1.14: Temperaturvurdering
Lag et program som ber om temperaturen. Hvis temp > 25: 'Varmt', hvis temp > 15: 'Behagelig', hvis temp > 0: 'Kjølig', ellers: 'Kaldt'.
Medium
Python
Loading...
Løsningsforslag Oppgave 1.14
Se videoløsning for denne oppgaven.

Logiske operatorer

Logiske operatorer lar oss kombinere flere betingelser i en if-setning.

andBegge betingelser må være sanne
True and True = True
True and False = False
orMinst én betingelse må være sann
True or False = True
False or False = False
notNegerer/snur en betingelse
not True = False
not False = True
Eksempel: Logiske operatorer
Python
Loading...
Oppgave 1.15: Adgangskontroll
Lag et program som sjekker alder og medlemskap. Be om alder (int) og medlemskap (ja/nei). Hvis alder >= 18 AND medlemskap == 'ja', skriv 'Velkommen inn!', ellers 'Ingen adgang'.
Medium
Python
Loading...
Løsningsforslag Oppgave 1.15
Se videoløsning for denne oppgaven.
Oppgave 1.16: Helg eller ukedag?
Lag et program som ber om en dag (string). Hvis dag er 'lørdag' OR 'søndag', skriv 'Det er helg!', ellers skriv 'Det er ukedag'.
Lett
Python
Loading...
Løsningsforslag Oppgave 1.16
Se videoløsning for denne oppgaven.
Oppgave 1.17 (if_else_vq.py)
Sett v = 400 og q = 900. Lag en if-setning der koden: print("q er størst") utløses dersom q > v. NB: Her er det greit å merke seg at vi ikke må ha en else-setning som utløses om det ikke er sant. Kjør programmet. Legg til en else-setning som utløser koden: print("q er mindre enn eller lik v") dersom ikke if setningen utløses. Kjør programmet for forskjellige verdier av v og q.
Lett
Python
Loading...
Løsningsforslag Oppgave 1.17
Se videoløsning for denne oppgaven.
Oppgave 1.18 (if_fin_dag.py)
Sett x = "Ja", lag deretter en if-setning som utløser koden: print("Det var godt å høre.") dersom x == "Ja". Lag en else-setning som utløser koden print("Det var trist.") dersom if-setningen ikke utløses. (Altså ellers) Erstatt nå x = "Ja" med x = input("Har du en fin dag? Svar: "). Kjør programmet. Husk å skrive inn Ja i konsollen med stor forbokstav når du prøver å utløse if-setningen.
Lett
Python
Loading...
Løsningsforslag Oppgave 1.18
Se videoløsning for denne oppgaven.
Oppgave 1.19 (penger.py)
Sett penger = 200 og pris = 150. Lag en if-setning som utløses dersom penger > pris. Den skal utløse koden: print("Einar har råd til den dyreste fotballen og har ", penger - pris, " kroner igjen.") Lag en else-setning som utløses dersom ikke if-setningen utløses. Koden som utløses skal være: print("Einar mangler ", pris-penger," kroner for å ha råd til fotballen.") Kjør programmet for forskjellige verdier av penger og pris. I starten av koden din bruk en print()-funksjon slik at programmet skriver ut følgende: Lille Einar skal på lekebutikken for å kjøpe seg en fotball. Han får litt penger av foreldrene sine. Han er ganske liten og vet verken hva de forskjellige fotballene koster eller hvor mye han har. Han går med en fotball og pengene til kassen. Erstatt nå penger = 200 med penger = int(input("Mannen i kassa ser at Einar har fått (Skriv inn antall kroner): ")) Du kan nå skrive inn beløpet Einar har fått selv. Erstatt nå pris = 150 med pris = int(input("Ballen har en pris på (Skriv inn antall kroner): ")) Prisen på ballen kan du nå også bestemme selv.
Medium
Python
Loading...
Løsningsforslag Oppgave 1.19
Se videoløsning for denne oppgaven.
Oppgave 1.20: Egen if-setning (funksjon_test.py)

Lag ditt eget program med if-setninger. Velg ett av følgende:

a

Lag et program som sjekker om en person er gammel nok til å kjøre bil (alder >= 18)

b

Lag et program som sjekker om et tall er positivt eller negativt

c

Lag et program som sjekker om brukeren har skrevet inn riktig passord Programmet skal bruke input() og if-else setninger.

Lett
Python
Loading...
Løsningsforslag Oppgave 1.20
Se videoløsning for denne oppgaven.

Oppsummering

Sammenligningsoperatorer: ==, !=, >, <, >=, <=

If-setninger kjører kode når en betingelse er sann

Else gir et alternativ når betingelsen er usann

Elif brukes for flere alternativer

Logiske operatorer: and (begge), or (minst én), not (negate)

Husk innrykk (4 mellomrom) i if-blokker