Programmeringskurs: 2.2 Sammensatte sammenlikninger
Og - Eller
Noen ganger sammenlikner vi flere forhold før vi tar en avgjørelse. Tenk deg at du søker etter bøker på biblioteket. Boka du leter etter, bør ikke være på over 200 sider, og den skal være på engelsk. Den logiske sammenlikningen dette søket trenger, består av to forskjellige sammenlikninger som begge skal være sanne.
antall sider mindre enn eller lik 200 og språk er engelsk
I Python kan vi skrive dette slik
antall_sider <= 200 and language == "en"
Vi ser at vi bruker det engelske ordet and.
Vi bruker kodeordet and når vi vil gjøre to eller flere sammenlikninger.
sammenlikning1 and sammenlikning2
Alle sammenlikningene må være sanne for at sammensetningen av dem skal være sann.
Lag et program som ber om antall sider og språk. Skriv ut resultatet av den logiske sammenlikningen som sjekker om antall sider er mindre eller lik 200, og om språk-koden er "en".
Løsning
Vi lager programmet slik:
Når du kjører programmet, vil resultatet bli True så lenge du skriver et tall under eller lik 200 og «en» for språk.
Prøv å skrive inn f.eks. 130 sider og "en" for språk. Blir resultatet True?
Hvis du skriver 300 og «en», vil du få False. Begge de to logiske sammenlikningene må være sanne for at du skal få True.
Noen ganger ønsker du i stedet å sjekke om minst én av to logiske sammenlikninger er sanne. Tenk deg at du er på biblioteket igjen, og at du denne gangen skal finne ei bok som enten er på norsk eller dansk.
Bokas språk skal enten være norsk eller dansk
I Python bruker vi det engelske or for eller.
I sammensatte logiske sammenlikninger som sjekker om minst én av sammenlikningene er sanne, bruker vi kodeordet or.
sammenlikning1 or sammenlikning2
Lag et program som ber deg angi hvilket språk du ønsker. Skriv ut resultatet av den logiske sammenlikningen som sjekker om språket enten er «no» eller «dk».
Løsning
Vi lager programmet slik:
Resultatet blir True både hvis brukeren skriver inn no eller dk, men False hvis brukeren skriver inn noe annet.