4. tunti

Vertailu ja if-else -rakenne

Vertailu

Ohjelmointikielissä vertaillaan usein eri asioita. Vertailun tulos on joko tosi (True) tai epätosi (False). Vertailun tulos voidaan varastoida Boolean-tyyppiseen muuttujaan (tänään ei varastoida). Vertailun perusteella ohjelman jatko usein jakautuu eri urille, kuten if-else-rakenteessa (johon tutustutaan pian).

Kirjan sivulla 36 on taulukoitu vertailuoperaattorit, niitä on syytä vilkaista nyt.

Huomaa, että Pythonissa yhtäsuuruusmerkin tarkoitus on eri kuin matematiikassa. Pythonissa yhtäsuuruusmerkin avulla sijoitetaan muuttujalle arvo (esim. x=5 tarjoittaa, että muuttujan x arvoksi asetetaan luku 5). Jos Pythonilla vertaillaan yhtäsuuruutta, käytetään merkintää == (eli kaksi yhtäsuuruusmerkkiä peräkkäin).

Jos Pythonin laittaa tulostamaan jonkin vertailun tuloksen, tulosteeksi saadaan joko True tai False sen mukaan onko vertailu totta.

Esim.
print(8>7) tulostaa True
print(5<6) tulostaa False

Tee tähän väliin ensimmäinen tuntitehtävä.

If-else -rakenne

Edellisessä harjoituksessa olisi ollut hyödyllistä saada ohjelma tulostamaan erilaisen tekstin riippuen vertailun todenmukaisuudesta. If-else -komennoilla voidaan saada erilaiset tulosteet riippuen vertailun tuloksesta.

Rakenne toimii seuraavasti:



Sisennyksillä on merkitystä.

Alla oleva esimerkkikoodi kertoo onko syötetty luku suurempi kuin 10, vai ei:

x=input("Anna luku")
if x>10:
print("Lukusi on suurempi muin 10")
else:
print("Lukusi ei ole suurempi kuin 10")