Programmeringskurs: 2.2 Sammensatte sammenlikninger
Flere betingelser
Logiske sammenlikninger kan fort bli kompliserte, men bruk av parenteser kan hjelpe deg å holde orden og oversikt. Innholdet i en parentes kan du se på som en separat logisk sammenlikning. Den kan kombineres med andre logiske sammenlikninger slik:
(sammenlikning1) and (sammenlikning2) and (sammenlikning3)
For at hele den logiske sammenlikningen skal være sann, må hver sammenlikning i hver parentes også være sann.
Lag et program som ber deg angi et tall. Programmet skal sjekke om alle betingelsene nedenfor stemmer, og skrive ut resultatet av sjekken.
- Tallet skal være større enn 10.
- Tallet skal være mindre enn 100.
- Tallet skal være et partall.
Løsning
Mange tall kan gi «rett svar», og vi lager programmet slik
Nedenfor ser du to resultater:
Resultat: |
Resultat: |
Hva er tallet ditt? 6 |
Hva er tallet ditt? 68 |
Programmet i eksempelet over ville fungert også uten parenteser omkring betingelsene. Det er en smakssak om du vil bruke dem eller ikke. Men noen ganger vil plasseringen av parentesene kunne gi forskjellig resultat av den logiske sammenlikningen.
Noen ganger kan vi få bruk for både and og or i samme logiske sammenlikning.
Lag et program som sjekker om to tall har samme fortegn.
Løsning:
Først ber vi brukeren skrive inn to tall:
x = float(input("Skriv et tall: "))
y = float(input("Skriv et tall til: "))
Vi skal sjekke om de to tallene har samme fortegn, altså om begge er positive eller negative. Vi kan beskrive dette slik:
#x# er positivt og #y# er positivt eller #x# er negativt og #y# er negativt
Med kode blir dette slik:
(x >= 0 and y >= 0) or (x < 0 and y < 0)
Vi skriver ut resultatet av sammenlikningen. Da blir hele koden slik: