1.8 Totuusarvot True ja False, vertailumerkit sekä loogiset operaattorit and, or, not
On usein hyödyllistä määritellä, onko jokin tietty ehto totta. Tietokone tuntee vain kaksi totuusarvoa, True (tosi) ja False (epätosi). Näiden totuusarvojen tietotyyppi on useimmissa ohjelmointikielissä boolean. Tietokone osaa helposti tarkistaa vaikkapa kahden tiedon yhtenevyyden tai vaikkapa lukujen yhtäsuuruuden. Tietokone ei kuitenkaan osaa tulkita tilannetta samoin kuin ihminen; sana ’Esimerkki’ on tietokoneen kannalta eri kuin ’esimerkki’.
Merkkijonojen yhtenevyyttä voidaan tutkia vain == operaattorin avulla. Lukuja voidaan kuitenkin tutkia kaikilla vertailuoperaattoreilla. Tietokoneen käyttämät merkinnät ovat miltei samat kuin matematiikassa:
Esimerkkejä totuusarvoista toimintaikkunassa:
Ehtoja voidaan myös yhdistää niin sanottujen loogisten operaattoreiden avulla; and, or ja not. Jotta and operaattorin yhdistämät ehdot tuottaisivat totuusarvon True, on molempien ehtojen oltava totta. Jotta or-operaattorin yhdistämät ehdot tuottaisivat totuusarvon True, riittää että toinen ehto on totta. Not operaattori palauttaa aina ehdon totuusarvon vastakohdan.
Esimerkkejä loogisista operaattoreista toimintaikkunassa:
Harjoituksia totuusarvoista:
1. Pohdi ensin, ja tarkista sitten, mitä tulostuu, kun kirjoitat editoriin komennot
a. print(5 >= -6)
b. print(True or 6
c. print(False and False)
2. Tutki editorissa, onko
a. luku 1,510 suurempi kuin luku 1,501?
b. luku 4 samantyyppinen kuin luku 4,0? (muista type()-komento!)
3. Tallenna luku −1,13 muuttujaan luku1 ja luku −1,09 muuttujaan luku2
4. Kirjoita koodi, jonka avulla voit tutkia, onko
a. luku −1,15 suurempi kuin luku1
b. onko luku −1,11 suurempi kuin luku1 ja pienempi kuin luku2
5. Kirjoita koodi, jonka avulla voit tutkia, toteuttaako luku 𝑥=−3 ehdon
c. 1≤𝑥
d. 5∙𝑥+15=𝑥−𝑥 (huom! Kertolasku merkitään *-merkillä)
Ratkaisut: