Luku 1 Tulostaminen

Johdannossa opit, että print komento tulostaa tekstiä näytölle. Tässä luvussa tutustumme tarkemmin tulostamiseen ja siihen, miten voimme muokata tulostettavaa tekstiä. Harjoittele vielä yksinkertaista tulostamista seuraavan tehtävän avulla.

Harjoitus

Rivin tulostaminen

Pisteet: 0 / 10

Kirjoita ohjelma, joka tulostaa seuraavan lauseen näytölle: Osaan ohjelmoida!

Konsoli

Esimerkkitulostus

Osaan ohjelmoida!

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Virheet ohjelmoitaessa

Ohjelmoitaessa voi tulla virheitä, jotka estävät ohjelman suorittamisen, koska tietokone ei ymmärrä mitä sen pitäisi tehdä. Virheet voivat johtua esimerkiksi kirjoitusvirheistä, väärästä komennosta tai puuttuvasta osasta ohjelmaa. Esimerkiksi seuraava ohjelma ei toimi, koska print komennon sisällä tulostettava teksti ei ole lainausmerkkien sisällä.

print(Hei maailma!)

Kun yrität suorittaa ohjelmaa saat virheilmotuksen:

Konsoli

Esimerkkitulostus

Paljon muita virheilmoituksia... . . . print(Hei maailma!) ^ SyntaxError: invalid syntax

Tulostuksesta huomataan, että kyseessä on syntaksi virhe, eli ohjelma ei ole kirjoitettu oikein. Tässä tapauksessa puuttuvat lainausmerkit.

Ohjelmointivirheitä ei kannata pelätä, sillä niitä tulee jokaiselle ohjelmoijalle. Virheistä oppii ja niitä korjaamalla oppii ohjelmoimaan paremmin.

Tiesitkö? Ohjelmoijat kutsuvat virheitä usein myös bugeiksi 🪲. Tämä johtuu siitä, että virheiden korjaaminen on kuin metsästäisi ötököitä, jotka ovat piiloutuneet ohjelman sisään.

Harjoitus

Bugien metsästys

Pisteet: 0 / 10

Korjaa seuraava ohjelma tulostamaan esimerkkitulostuksen mukainen lause.

print"bugeja pitää oppia metsästämään)

Konsoli

Esimerkkitulostus

Bugeja pitää oppia metsästämään!

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Kuinka monta löysit? Kolme? Hyvä! Jatka seuraavaan lukuun oppiaksesi lisää tulostamisesta.

Usean rivin tulostaminen

Pythonilla voit tulostaa usean rivin tekstiä käyttämällä print komentoa useamman kerran. Esimerkiksi:

print("Rivi 1")
print("Rivi 2")

Tulostaa seuraavanlaisesti:

Konsoli

Esimerkkitulostus

Rivi 1 Rivi 2

Harjoitus

Monen rivin tulostaminen

Pisteet: 0 / 10

Kirjoita ohjelma joka tulostaa seuraavat kolme riviä esimerkkitulostuksen mukaisesti näytölle

Konsoli

Esimerkkitulostus

Algoritmi akatemia opettaa

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Harjoitus

⭐⭐ Monimutkainen tulostaminen

Pisteet: 0 / 10

Kirjoita ohjelma joka tulostaa näytölle kuvion. Huomaa! Voit joutua asettamaan 2 ja 3 rivin väliin enemmän välilyöntejä kuin aluksi voi vaikuttaa.

Konsoli

Esimerkkitulostus

#### # # # # ####

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Matemaattiset laskut

Pythonissa voit käyttää erilaisia matemaattisia symboleja tulostamaan matemaattisia laskuja. Esimerkiksi:

print(2 + 2)

Tulostaa seuraavanlaisesti:

Konsoli

Esimerkkitulostus

4

Tässä siis Python laskee laskun 2+22 + 2 ja tulostaa tuloksen 44 näytölle print-komennon avulla.

Entä, arvaatko mitä seuraava ohjelma tulostaa?

print("2 + 2")

Konsoli

Esimerkkitulostus

2 + 2

Täsmälleen! Se tulostaa 2 + 2, koska teksti on lainausmerkkien sisällä ja Python ajattelee sen merkkijonona ja tulostaa sen siten sellaisenaan.

++-operaation lisäksi muita matemaattisia operaattoreita ovat:

OperaattoriKuvausEsimerkkiTulostus
+Yhteenlaskuprint(2 + 3)5
-Vähennyslaskuprint(5 - 2)3
*Kertolaskuprint(3 * 4)12
/Jakolaskuprint(10 / 2)5.0
//Kokonaislukujakoprint(10 // 3)3
%Jakojäännösprint(10 % 3)1
**Potenssiprint(2 ** 3)8
()Sulkeetprint((2 + 3) * 4)20

Kokeile seuraavaksi tulostaa matemaattisia laskuja ja kokeile mitä tapahtuu kun käytät eri operaattoreita.

Koodieditori

Konsoli

Kokeilitko mitä tapahtuu jos et kirjoita print komentoa laskun ympärille. Kokeile esimerkiksi kirjoittaa:

2 + 2

Huomasitko? Ohjelma ei tulostanut mitään. Tämä johtuu siitä, että ohjelma suorittaa laskun, mutta ei tulosta sitä näytölle, koska et ole komentanut Pythonia tulostamaan laskun tulosta print komennolla.

Esimerkkejä

Tehdään vielä muutama esimerkki matemaattisista laskuista, jonka jälkeen siirrymme harjoituksiin. Keskitytään erityisesti jakolasku operaattoreihin, joita on kolme erilaista.

Esimerkki 1

  • Operaattori // jakaa kaksi lukua ja palauttaa tuloksen desimaalilukuna.
  • Operaattori //// jakaa kaksi lukua ja palauttaa tuloksen kokonaislukuna.
  • Operaattori %\% jakaa kaksi lukua ja palauttaa jakojäännöksen.

Eli jos jaetaan luku 33 luvulla 22 saadaan seuraavat tulokset:

print(3 / 2)
print(3 // 2)
print(3 % 2)

Konsoli

Esimerkkitulostus

1.5 1 1

Selitys:

  • 3/23 / 2 jakaa luvun 33 luvulla 22 ja palauttaa tuloksen 1.51.5 desimaalilukuna, koska käytettiin //-operaattoria.
  • 3//23 // 2 jakaa luvun 33 luvulla 22 ja palauttaa tuloksen 11 kokonaislukuna, koska käytettiin ////-operaattoria, mikä pyöristää vastauksen alaspäin lähimpään kokonaislukuun.
  • 33 % 2 jakaa luvun 33 luvulla 22 ja palauttaa tuloksen jakojäännöksen, koska 3:2=1ja¨a¨13 : 2 = 1 jää 1.

Esimerkki 2

Lasketaan seuraavaksi potenssilasku 232^3:

print(2 ** 3)

Konsoli

Esimerkkitulostus

8

Tässä lasketaan siis 23=222=82^3 = 2 * 2 * 2 = 8 ja tulostetaan tulos.

Esimerkki 3

Lasketaan seuraavaksi hieman monimutkaisempi lasku ((105)+(30/2)(63))((10 * 5) + (30 / 2) - (6 * 3)) ja tulostetaan tulos hieman monimutkaisemmin:

print("Tulos: ", (10 * 5) + (30 / 2) - (6 * 3))

Konsoli

Esimerkkitulostus

Tulos: 47.0

Helppoa, eikö totta? Tarvitsee siis vain kirjoittaa lasku oikein Pythonille ja antaa sen tehdä raskas laskenta.

Käytimme myös print-komentoa tulostamaan tekstin ja laskun tuloksen samalla rivillä. Näin voidaan tehdä kun nämä eri osat erotetaan pilkulla , print komennon sisällä.

Kokeile seuraavaksi harjoituksia ja testaa osaamistasi!

Extra: Ihmettelitkö miksi tulostus on 47.047.0 eikä 4747? Tämä johtuu siitä, laskussa on jakolasku jonka Python palauttaa desimaalilukuna ja päättää sen vuoksi lisätä desimaalipisteen tulokseen.

Harjoitus

Matikan laskeminen

Pisteet: 0 / 10

Kirjoita ohjelma joka laskee laskun (2+3)45(2 + 3) * 4 - 5 tuloksen ja tulostaa sen näytölle.

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Harjoitus

⭐⭐ Sanallinen tulostustehtävä osa1

Pisteet: 0 / 10

Kirjoita ohjelma joka tutkii kuinka monta kertaa luku 18 sisältyy lukuun 200 ja tulostaa tuloksen näytölle.

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Harjoitus

⭐⭐ Sanallinen tulostustehtävä osa2

Pisteet: 0 / 10

Muokkaa edellisen tehtävän tulostusta siten, että se tulostaa näytölle edellisen tehtävän tuloksen muodossa Luku 18 sisältyy lukuun 200 yhteensä x kertaa., missä x on edellisen tehtävän tulos.

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Tulostuksen muotoilu

Voit käyttää Pythonissa + ja , operaattoreita yhdistämään eri muuttujia ja tekstejä tulostuksessa. Esimerkiksi:

print("Algoritmi" + "Akatemia")
print("Algoritmi", "Akatemia")

Tulostaa seuraavanlaisesti:

Konsoli

Esimerkkitulostus

AlgoritmiAkatemia Algoritmi Akatemia

Eli + operaattori yhdistää tekstit toisiinsa ja , operaattori erottaa tekstit toisistaan välilyönnillä.

Harjoitus

Tulostuksen muotoilu

Pisteet: 0 / 10

Kirjoita ohjelma joka tulostaa sanat "murto" ja "luku" yhteen ilman välilyöntiä käyttämällä sopivaa operaattoria.

Kirjoita ohjelmasi alle ja tarkista se "Suorita" painikkeella:

Konsoli

Ethän huijannut edellisessä tehtävässä? Hmmmm ... joka tapauksessa vaikuttaa siltä, että tulostaminenkin on sinulla hallinnassa! Tee vielä alla olevat yhteenvetotehtävät ja siirry seuraavaan lukuun oppiaksesi lisää ohjelmoinnista.

Monivalintakysymyksiä

Pisteet: 0 / 5

Millä komennolla voit tulostaa tekstiä konsoliin Pythonilla?

Mitä seuraava ohjelma tulostaa? print(12 + 2)

Mitä seuraava ohjelma tulostaa? print(9 % 3)

Mitä seuraava ohjelma tulostaa? print('algoritmi' + 'akatemia')

Mitä seuraava ohjelma tulostaa? print(10 / 0)