IFI7209.DT Haridustehnoloogia ja õppimisteadused - kevad 2018

Hariduslikud programmeerimiskeeled | Sissejuhatus Pythonisse

25.05.2018 11:50 by Martin Männik
Programmeerimiskeele Python esimene versioon loodi Guido van Rossum’i poolt 1989. aastal, tegemist on suhteliselt lihtsa kõrgtasemel programmeerimiskeelega. Nime on keel saanud inglise koomikutegrupi Monty Python järgi.


Pythoni keele tundmaõppimiseks kasutamine keskkonda Thonny.

Thonny saab kodus harjutamiseks alla laadida siit: http://thonny.cs.ut.ee/


Igas keeles on programmi kirjapanekuks omad reeglid. Järgmisena vaatame reegleid, mis kehtivad Pythoni keeles.


Kui me tahame ekraanil midagi kuvada, siis on selleks käskluseks print.

Kirjuta Thonny ülemisse aknasse print (“Tere suvi!”) ja vajuta nuppu “run” või klaviatuuril nuppu F5 (roheline nooleke töölaua kohal).


Millegi ekraanile kuvamiseks kasutatakse Pythonis sõna print ja kuvatav tekst pannakse sulgudesse ning jutumärkidesse.


– kustuta jutumärgid ära ja käivita programm uuesti. Mida märkad?


Juhul kui programmis on mingi viga, siis annab sellest teada sõna “error”. Praegusel juhul tähendab “syntax error” seda, et viga on just keeles.


Teksti kuvamiseks tuleb see kirjutada jutumärkidesse!


Muutuja – mälupiirkond andmete salvestamiseks. Nende andmetega saab arvuti muutuja kaudu edasi toimetada.


Muutujal on oma nimi (NB! nimeks ei saa olla mõni Phytonis reserveeritud käsklus, näiteks print) ja talle väärtuse andmiseks kasutatakse võrdusmärki (=)


Näiteks

a = 1 (muutuja nimega a väärtuseks on arv 1)

nimi = “Kalle” (muutuja nimi väärtuseks on tekst “Kalle”)


print(a) kuvab ekraanil numbri 1

print(nimi) kuvab ekraanil nime


Mida kuvab ekraanil käsk print(nimi, a)?


Mida kuvab ekraanil käsk print(nimi + a)?


Ilmselt saite viimast käsku proovides teate TypeError. See tähendab, et viga on andmete tüübis. Meil on praegu kasutusel 2 andmetüüpi – täisarvud ja sõned (tekst). + märki kasutades saab omavahel kokku liita arve või sõnesid, aga sõnesid ja arve omavahel liita ei saa.


Lisaks täisarvudele ja sõnedele on Pythonis kasutusel veel sellised andmetüübid, nagu

ujukomaarvud (1.3, 3.14 – koma asemel kirjutatakse Pythonis punkt)

tõeväärtused (True või False ehk tõene või väär).


Arvude sõneks teisendamiseks kasutatakse str(a) ja sõnede arvudeks teisendamisel int(a) käsklusi (loomulikult ei saa inimese nime selle käsuga numbriks teisendad, aga kui küsime kasutajalt numbri sisestamist, siis võetakse seda sisestatud numbrit kui teksti ning see vajab teisendamist).


Kuidas kuvada ekraanil teksti “Minu nimi on (nimi)”?


Praegu me kirjutame ise programmi muutuja sisse, aga võimalus on seda ka kasutajalt küsida. Kasutaja vastuse saame muutujasse sisestada käsuga input.


nimi = input(“Sisesta nimi: “)


input sõna järel sulgudes olev tekst kuvatakse programmi kasutajale tekstina. NB! Kui soovid, et nime ja kooloni vahele jääks tühik, siis sisesta see tühik jutumärkide sisse.


Muutujad saab lausesse kirjutada kasutades pluss-märki, kusjuures oluline on tähele panna, et muutujat lauses jutumärkidesse ei panda:













nimi = "Raido"

lause = "Tere, " + nimi

print(lause) 







Ülesanne 1


Koosta programm, mis küsib kasutajalt nime ning lemmikvärvi ja kuvab vastuseks teksti:


Tere, nimi! Sinu lemmikvärv on värv!




Muutujatega saab teha ka tehteid.


a=1

b=2

kokku=a+b

print(kokku)


Proovi nüüd järgmist programmi käivitada. Mis saad vastuseks?


a = input(“Sisesta 1. arv: “)

b = input(“Sisesta 2. arv: “)

kokku = a + b

print(kokku)


Kui me küsime vastaja käest arvu, siis võtab programm seda arvu kui teksti ning liitmistehte abil kirjutab lihtsalt arvud järjest, mitte ei liida!

Selleks, et programm sisestatud teksti (mis ju tegelikult ongi arv) arvuna võtaks, tuleb seda eraldi teada anda lühendiga int() ehk siis int(a) teisendab muutuja a arvuks ja int(b) vastavalt muutuja b arvuks.




Ülesanne 2


Tee ülalolevas programmis vajalikud parandused, et see väljastaks sisestatud arvude summa!




Ülesanne 3


Koostada programm, mille

1. real luuakse muutuja nimega aasta ning selle väärtuseks pane oma sünniaasta (arvuna);

2. real luuakse muutuja nimega eesnimi ning selle väärtuseks sisesta oma eesnimi (sõnena);

3. real luuakse muutuja nimega perenimi ning selle väärtuseks sisesta oma perekonnanimi (sõnena);

4. real luuakse muutuja kirje, mille väärtuse saamiseks ühendatakse muutujate eesnimi, perenimi ja aastaväärtused üheks sõneks. Väärtuste vahele pannakse tühikud;

5. real väljastatakse muutuja kirje väärtus ekraanile.


Täienda oma programmi nii, et sünniaasta, eesnime ja perekonnanime saaks sisestada kasutaja


 


 




Lisaülesanne tublidele


Koostada programm, mille

1. real küsitakse inimese nime


2. real küsitakse inimese vanust


3. real sõnastatakse tingimuslause, kus:


juhul kui inimene on 16 aastane või vanem, lubab programm tal lotopileti osta ning väljastab teksti: Tere, nimi! Läbisid vanuse automaatkontrolli ning võid ostlemist jätkata!


juhul kui inimene on noorem kui 16 aastane, ei luba programm tal lotopileteid osta ning väljastab teksti: Tere, nimi! Kahjuks oled Sa hasartmängudeks liiga noor. Pead veel paar aastat kasvama.


 


Vihje: tingimuslauset saab sisestada if käsu abil, millele järgneb tingimus. Näiteks, kui seame tingimuseks, et x peab olema väiksem võrdne kolmest, siis näeks see välja seesugune:


if x <= 3:


print(“iks on väiksemvõrdne kolmest”)


else:


print(“iks on suurem kui kolm”)


NB! Tingimuslause lõpust ei tohi puududa koolon, vastasel juhul väljastatakse veateade! Peale tingimuse sõnastamist tuleb järgmist rida alustada taandreaga, muidu väljastab programm samuti veateate


Tingimuslause kohta saab pikemalt lugeda siit: http://progeopik.cs.ut.ee/03_liitlaused.html#tingimuslause-e-if-lause

https://martiniopingud.wordpress.com/2018/05/25/hariduslikud-programmeerimiskeeled-sissejuhatus-pythonisse/

0 comments:

Post a comment