Seiskaluokan asiat
Tekstin tulostaminen tietokoneen ruudulle vaatii komennon print( ). Tulostettava teksti kirjoitetaan sulkeiden sisälle, " -merkkien väliin.
ESIMERKKI.
print("Mukavaa että alat opetella koodaamista")
Jos haluat tekstin eri riveille, niin kirjoita joka rivi omalla print( ) komennolla TAI
print(""" Tässä
teksti
tulee
usealle
riville.""")
HUOM! Koodin sekaan voit kirjoittaa itsellesi kommenttirivejä eli selityksiä mitä koodilla tarkoitat laittamalla rivin alkuun #-merkin eli risuaita-merkin. Ohjelma ei tulkkaa eli suorita sellaista riviä jonka alussa on #-merkki.
ESIMERKKI.
print("Mukavaa että alat opetella koodaamista")
Jos haluat tekstin eri riveille, niin kirjoita joka rivi omalla print( ) komennolla TAI
print(""" Tässä
teksti
tulee
usealle
riville.""")
HUOM! Koodin sekaan voit kirjoittaa itsellesi kommenttirivejä eli selityksiä mitä koodilla tarkoitat laittamalla rivin alkuun #-merkin eli risuaita-merkin. Ohjelma ei tulkkaa eli suorita sellaista riviä jonka alussa on #-merkki.
|
KOODI |
OHJELMA TULOSTAA RUUDULLE |
|
print("Mukavaa että alat opetella ohjelmointia!") |
Mukavaa että alat opetella ohjelmointia! |
|
print("Matti Mallikas") |
Matti Mallikas |
|
print("Matti") print("Mallikas") |
Matti Mallikas |
|
print(2*4) #Tämä koodi laskee kertolaskun, ei laiteta lainausmerkkejä! |
8 |
MUUTTUJA
* "laatikko", johon voidaan tallentaa tietoa
* sen ARVO asetetaan = merkillä (eli yhtäsuuruusmerkillä)
* siihen talletettavalla tiedolla on aina jokin tyyppi
* sen ARVO asetetaan = merkillä (eli yhtäsuuruusmerkillä)
* siihen talletettavalla tiedolla on aina jokin tyyppi
| STR | merkkijono |
| INT | kokonaisluku |
| FLOAT | desimaaliluku |
| KOODI |
OHJELMA TULOSTAA RUUDULLE |
| x=3 y=6 print(x+y) |
9 |
| x="koo" y="di" print(x+y) print(x,y) |
koodi koo di |
SYÖTE
Käyttäjältä voidaan pyytää SYÖTE (eli vastaus kysymykseen) komennolla input()
Käyttäjän antama vastaus pitää tallentaa muuttujan arvoksi.
ESIM.
luku1=int(input("Anna kokonaisluku:"))
#luku1= tallentaa käyttäjän antaman vastauksen muuttujan luku1 arvoksi
#int() kertoo tulkille vastauksen tyypin olevan kokonaisluku
#input() pyytää syötteen
#lainausmerkkien välissä oleva teksti tulostuu ruudulle kysymykseksi, johon käyttäjä voi vastata.
Huomaa että int() komento ennen input() komentoa kertoo tulkille että luvut ovat kokonaislukuja.
Pelkkä input() komento lukee syötteen merkkijonoksi.
Käyttäjän antama vastaus pitää tallentaa muuttujan arvoksi.
ESIM.
luku1=int(input("Anna kokonaisluku:"))
#luku1= tallentaa käyttäjän antaman vastauksen muuttujan luku1 arvoksi
#int() kertoo tulkille vastauksen tyypin olevan kokonaisluku
#input() pyytää syötteen
#lainausmerkkien välissä oleva teksti tulostuu ruudulle kysymykseksi, johon käyttäjä voi vastata.
Huomaa että int() komento ennen input() komentoa kertoo tulkille että luvut ovat kokonaislukuja.
Pelkkä input() komento lukee syötteen merkkijonoksi.
| KOODI | OHJELMA TULOSTAA RUUDULLE |
| #koodi, joka pyytää kaksi kokonaislukua, laskee niiden tulon ja tulostaa vastauksen luku1=int(input("Anna kokonaisluku:")) luku2=int(input("Anna toinen kokonaisluku:")) print(luku1*luku2) |
Anna kokonaisluku: Anna toinen kokonaisluku: (lukujen kertolaskun tulos) |
| KOODI | OHJELMA TULOSTAA RUUDULLE |
| #koodi, joka muodostaa käyttäjän antamista sanoista yhdyssanan sana1=str(input("Anna sana:")) sana2=str(input("Anna toinen sana:")) print("Antamistasi sanoista muodostuu yhdyssana",sana1+sana2) |
Anna sana: KÄSI Anna toinen sana: LAUKKU Antamistasi sanoista muodostuu yhdyssana KÄSILAUKKU |
VERTAILU
Lukuja voidaan vertailla vertailuoperaattoreiden avulla.
Tulokseksi saadaan joko tosi (true) tai epätosi (false).
Voidaan tulostaa pelkästään vertailun tulos eli true/false
TAI tehdä jatkotoimia, esimerkiksi tulostaa jokin teksti.
Tulokseksi saadaan joko tosi (true) tai epätosi (false).
Voidaan tulostaa pelkästään vertailun tulos eli true/false
TAI tehdä jatkotoimia, esimerkiksi tulostaa jokin teksti.
| vertailu | tosi (true), kun |
| a==b | a ja b ovat yhtäsuuria |
| a>b | a on suurempi kuin b |
| a>=b | a on suurempi tai yhtäsuuri kuin b |
| a<b | a on pienempi kuin b |
| a<=b | a on pienempi tai yhtäsuuri kuin b |
| a<>b a!=b |
a ja b ovat erisuuria |
| KOODI | OHJELMA TULOSTAA RUUDULLE |
| #koodi, joka tulostaa vertailun tuloksen print(3>5) |
false |
VALINTARAKENTEET if-else JA if-elif-else
Valintarakenteella if-else voidaan tehdä monivaiheisia valintoja eri ehdoilla. Se vastaa suomenkielellä rakennetta jos-muutoin.
(HUOM. Poista pisteet oikeaa koodia kirjoittaessasi, sisennys jouduttu nyt toteuttamaan niitä käyttäen)
Jos ehto on tosi (true) niin suoritetaan if-osion komennot, muulloin (eli jos ehto on epätosi (false)) suoritetaan else-osion komennot.
On tärkeää huomata, että Pythonissa välilyönti tai sisennys määrittelee mihin kokonaisuuteen rivi loogisesti kuuluu.
Ne koodin osat, jotka halutaan samaan kokonaisuuteen, on sijoitettava samalle sisennystasolle. Sisennyksien sääntöjä on noudatettava!
Koodin loppuun kirjoitettu print() komennon teksti tulostuu joka kerta, koska se on kirjoitettu heti rivin alkuun.
Yllä olevassa taulukossa esiin tuleva "virhe" (annettaessa luvuksi 5 tulostuu virheellinen tieto, että luku on pienempi kuin 5, poistuu käyttämällä valintarakennetta if-elif-else.
Tämä rakenne antaa enemmän mahdollisuuksia monitasoiseen valintaan. Se vastaa suomenkielellä rakennetta jos-muutoin jos-muutoin.
(HUOM. Poista pisteet oikeaa koodia kirjoittaessasi, sisennys jouduttu nyt toteuttamaan niitä käyttäen.)
| if[ehto]: ........[if-osion komennot] else: ........[else-osion komennot] |
(HUOM. Poista pisteet oikeaa koodia kirjoittaessasi, sisennys jouduttu nyt toteuttamaan niitä käyttäen)
Jos ehto on tosi (true) niin suoritetaan if-osion komennot, muulloin (eli jos ehto on epätosi (false)) suoritetaan else-osion komennot.
On tärkeää huomata, että Pythonissa välilyönti tai sisennys määrittelee mihin kokonaisuuteen rivi loogisesti kuuluu.
Ne koodin osat, jotka halutaan samaan kokonaisuuteen, on sijoitettava samalle sisennystasolle. Sisennyksien sääntöjä on noudatettava!
| KOODI | OHJELMA TULOSTAA RUUDULLE | ||
| luku=int(input("Anna kokonaisluku väliltä 1-10:")) if luku>5: ..................print("Luku on suurempi kuin 5.") else: .........print("Luku on pienempi kuin 5.") print("Että tällä tavalla!") |
vaihtoehdot kuvattuna alla olevissa soluissa... |
||
| #Punainen numero on käyttäjän antama numero. | Anna kokonaisluku väliltä 1-10: 7 Luku on suurempi kuin 5. Että tällä tavalla! |
Anna kokonaisluku väliltä 1-10: 4 Luku on pienempi kuin 5. Että tällä tavalla! |
Anna kokonaisluku väliltä 0-10: 5 Luku on pienempi kuin 5. Että tällä tavalla! |
Koodin loppuun kirjoitettu print() komennon teksti tulostuu joka kerta, koska se on kirjoitettu heti rivin alkuun.
Yllä olevassa taulukossa esiin tuleva "virhe" (annettaessa luvuksi 5 tulostuu virheellinen tieto, että luku on pienempi kuin 5, poistuu käyttämällä valintarakennetta if-elif-else.
| if[1.ehto]: ........[if-osion komennot] elif:[2.ehto]: ........[elif-osion komennot] elif[3.ehto]: .........[elif-osion komennot] else: ........[else-osion komennot] |
Tämä rakenne antaa enemmän mahdollisuuksia monitasoiseen valintaan. Se vastaa suomenkielellä rakennetta jos-muutoin jos-muutoin.
(HUOM. Poista pisteet oikeaa koodia kirjoittaessasi, sisennys jouduttu nyt toteuttamaan niitä käyttäen.)
| KOODI | OHJELMA TULOSTAA RUUDULLE | ||
| luku=int(input("Anna kokonaisluku väliltä 1-10:")) if luku>5: ..................print("Luku on suurempi kuin 5.") elif luku<5: .........print("Luku on pienempi kuin 5.") else: .........print("Luku on 5.") |
vaihtoehdot kuvattuna alla olevissa soluissa... |
||
| #Punainen numero on käyttäjän antama numero. | Anna kokonaisluku väliltä 1-10: 7 Luku on suurempi kuin 5. |
Anna kokonaisluku väliltä 1-10: 4 Luku on pienempi kuin 5. |
Anna kokonaisluku väliltä 0-10: 5 Luku on 5. |