Valintalauseet
Valintalauseet eli If-lauseet
Valintalauseessa on haarautumisehto, jolla ohjelman suoritus saadaan haarautumaan jonkin ehdon mukaan. Pythonissa valintarakenne kirjoitetaan omana ohjelmalohkona, jonka IDLE-editori sisentää automaattisesti. If-rakenteeseen voidaan liittää vaihtoehtoinen else-haara, joka suoritetaan vain jos If-lause on epätosi (False).
Esimerkki: If-lause ilman else-haaraa
sana=input("kirjoita sana: ") #Muuttujan nimi tässä on sana
if "a" in sana: #Jos ehto..
print("sanassa on a-kirjaimia") #... niin mitä tapahtuu (Huom sisennys)
Kysyy käyttäjälta sanan ja tulostaa tekstin sanassa on a-kirjaimia, jos sana sisältää a-kirjaimia
Esimerkki: If-lause else-haaran kanssa
sana=input("kirjoita sana: ")
if "a" in sana:
print("sanassa on a-kirjaimia")
else:
print("sanassa ei ole a-kirjaimia")
Tulostaa tekstin sanassa ei ole a-kirjaimia, jos sanassa ei ole a-kirjaimia.
Esimerkki: If-lause ilman else-haaraa
sana=input("kirjoita sana: ") #Muuttujan nimi tässä on sana
if "a" in sana: #Jos ehto..
print("sanassa on a-kirjaimia") #... niin mitä tapahtuu (Huom sisennys)
Kysyy käyttäjälta sanan ja tulostaa tekstin sanassa on a-kirjaimia, jos sana sisältää a-kirjaimia
Esimerkki: If-lause else-haaran kanssa
sana=input("kirjoita sana: ")
if "a" in sana:
print("sanassa on a-kirjaimia")
else:
print("sanassa ei ole a-kirjaimia")
Tulostaa tekstin sanassa ei ole a-kirjaimia, jos sanassa ei ole a-kirjaimia.
Tehtävät
Tehtävä 1:
Aloita uusi tiedosto nimellä Valintalause. Kirjoita ohjelma, jossa muuttuja nimeltä numero kysyy käyttäjältä nelinumeroisen kokonaisluvun ja tulostaa tekstin kuuseen kapsahti kalikka, jos se sisältää numeron 6.
Testaa toimiiko ohjelmasi. Mitä tapahtuu jos syötettävä luku ei sisällä numeroa 6?
Huom: Tyypinmuunnos ei tässä välttämätön
Tehtävä 2:
Tee samaan ohjelmaan else-haara, joka tulostaa tekstin poika saunoo jos syötettävä luku ei sisällä numeroa 6.
Testaa molemmissa tapauksissa toimiiko ohjelmasi.
Tehtävä 3:
Aloita uusi tiedosto nimellä Valintalause2. Kirjoita ohjelma, jossa käyttäjältä kysytään kaksi kokonaislukua a ja b, jonka jälkeen ohjelma laskee lukujen erotuksen a-b. Laskutoimituksen jälkeen ohjelma tulostaa seuraavasti:
Testaa ohjelman toimivuus jokaisessa tilanteessa.
Aloita uusi tiedosto nimellä Valintalause. Kirjoita ohjelma, jossa muuttuja nimeltä numero kysyy käyttäjältä nelinumeroisen kokonaisluvun ja tulostaa tekstin kuuseen kapsahti kalikka, jos se sisältää numeron 6.
Testaa toimiiko ohjelmasi. Mitä tapahtuu jos syötettävä luku ei sisällä numeroa 6?
Huom: Tyypinmuunnos ei tässä välttämätön
Tehtävä 2:
Tee samaan ohjelmaan else-haara, joka tulostaa tekstin poika saunoo jos syötettävä luku ei sisällä numeroa 6.
Testaa molemmissa tapauksissa toimiiko ohjelmasi.
Tehtävä 3:
Aloita uusi tiedosto nimellä Valintalause2. Kirjoita ohjelma, jossa käyttäjältä kysytään kaksi kokonaislukua a ja b, jonka jälkeen ohjelma laskee lukujen erotuksen a-b. Laskutoimituksen jälkeen ohjelma tulostaa seuraavasti:
- jos erotus on pienempi kuin 0, tulostetaan "Erotus on negatiivinen"
- jos erotus on suurempi kuin 0 tulostetaan "Erotus on positiivinen"
- jos erotus on yhtä suuri kuin 0, tulostetaan "Kokonaisluvut ovat yhtä suuret"
Testaa ohjelman toimivuus jokaisessa tilanteessa.