2 Programm
Programmeerimiskeeled
Mingi ülesande lahendamiseks vajaliku algoritmi kirjapanek plokkskeemina võib küll olla arusaadav inimesele, aga see ei sobi hästi algoritmi arvutile arusaadavaks tegemiseks. Selleks otstarbeks tuleb lahendus esitada programmina (vt Eesti keele seletavast sõnaraamatust). Programm kirjutatakse mingis programmeerimiskeeles. Programmeerimiskeeli on olemas sadu, võib-olla tuhandeid. Nagu loomulikud keeled, on ka mõned programmeerimiskeeled omavahel sarnased, teised jällegi erinevad. Näiteks eesti keel on suhteliselt sarnane soome keelega, vene keel ukraina keelega ja rootsi keel norra keelega. Kuigi eesti keel ja katalaani keel ei ole väga sarnased, on neis mõlemas ikkagi nimisõnad, tegusõnad ja muud paljudele keeltele ühised omadused. Nii on ka erinevates programmeerimiskeeltes palju sarnaseid struktuure. Muu hulgas peab kuidagi olema võimaldatud, et:
- kui teatud tingimus on täidetud, siis tehakse ühtmoodi, kui pole täidetud, siis teistmoodi;
- mingit tegevust tehakse teatud arv kordi;
- mingit tegevust tehakse nii kaua, kui teatud tingimus on täidetud;
- mingeid programmiosasid saab suhteliselt iseseisvalt kasutada.
Programmeerimiskeeli saab tinglikult jaotada põlvkondadesse. (Põlvkondadest ja teistest ajaloolistest asjadest on juttu silmaringimaterjalis.) Rõhuv enamik programme kirjutatakse tänapäeval mingis kõrgtasemekeeles. Neist levinumad on näiteks C (ka C++, C#), Java, PHP ja Python. Erinevate keelte kasutuslevik on pidevas muutumises ja seda on huvitav jälgida näiteks siin.
Meie kursuse aluseks on programmeerimiskeel Python. Ühelt poolt on tegemist keelega, milles ka päriselt tööstuses programmeeritakse. Teiselt poolt on see sellistest keeltest sobivaim just esimeseks õpitavaks keeleks, sest lihtsaid programme saab kirjutada võrdlemisi väheste ridade abil. Programmeerimiskeele Python esimene versioon loodi 1989. aasta lõpus. Sellel kursusel kasutame versiooni Python 3. Täpsem versioon (nt 3.4.3 või 3.5.1) pole nii oluline, kuna meie jaoks on nende erinevused vähetähtsad.
Programmeerimiskeele Python looja nime leiad järgmisest ülesandest. Kuna tulemust kirja ei panda, võid vabalt valikuid katsetada, kuni õige lahenduseni jõuad.
Enesekontroll (1 küsimus)
Programmeerimiskeele Python autori kohta leiab natuke infot eesti keeles ja rohkem inglise keeles.
Esimene programm
Üks põhjus, miks Python on esimese keelena suhteliselt sobiv, on see, et päris esimese programmi kirjutamine on lihtne. Nii saame teha näiteks üherealise programmi:
Näiteprogramm. Tere
print("Tere!")
See programm toob ekraanile sõna “Tere!”.
Tavaliselt muidugi on programmis rohkem ridu. Täiendame oma programmi:
Näiteprogramm. Tere ja head aega
print("Tere!") print("Head aega!")
Thonny ja Pythoni paigaldamine arvutisse
Selleks, et programmeerimiskeeles Python programmeerima hakata, on vaja Python oma arvutisse saada. Pythoni saab paigaldada eraldi, aga meie kasutame oma kursusel keskkonda Thonny, millega Python juba kaasas on. Tegelikult on olemas ka veebipõhiseid võimalusi Pythonis programmeerimiseks ja mitmeid teisi keskkondi peale Thonny. Materjalides siiski eeldame, et kasutatakse Thonnyt, sest see võimaldab meil teemasid teatud Thonny abivahenditega illustreerida. Näiteks kasutame Thonny võimalusi muutujate väärtuste näitamiseks ja programmi sammhaaval läbimiseks.
Põhimõtteliselt saab kursuse praktiliselt kõiki ülesandeid lahendada ka nt IDLE või mõne teise keskkonna abil, aga materjalid on koostatud Thonnyt silmas pidades.
Thonny põhiautor on endine Tartu Ülikooli õppejõud Aivar Annamaa, kes nüüd töötab AS Cyberneticas. Thonny koduleht asub aadressil https://thonny.org/. Alla saab laadida näiteks järgnevaid Thonny versioone:
- Thonny 3.1.2 Windowsiga arvutile
- Paigaldamise videojuhend (Win 7).
- Paigaldamise videojuhend (Win 8.1/10).
- Thonny 3.1.2 Macile
- Paigaldamise videojuhend.
- Thonny 3.1.2 paigaldamise juhis Linuxiga arvutile
Tegemist on installeerimisfailidega, millega tuleb edasi toimetada vastavalt operatsioonisüsteemile. Videotes installeeritakse varasemaid versioone, aga ka uutes käib see samamoodi.
Paneme programmi tööle
Püüdke nende juhiste abil eespool antud lühike Tere-programm käivitada. Tegemist on väga olulise etapiga: kui saate esimese programmi tööle, siis on suur võimalus, et saate järgmisedki! Esialgu võivad need sammud võõrad tunduda, aga edaspidi harjub programmide koostamise, käivitamise ja parandamisega ära.
Pythoni (nagu mistahes teisegi keele) programm on ühelt poolt täiesti tavaline tekstifail, mida võime kirjutada tavalise tekstiredaktoriga (näiteks Notepadi või Wordiga). Siiski on seda mugavam teha spetsiaalse redaktoriga, näiteks Thonnyga. Tavaliselt on Pythoni programmide failidel laiendiks .py, Thonny lisab selle salvestamisel ise.
Lühema programmiga saime hakkama, püüame ka pikematega. Selle võite ise sisse kirjutada või siit kopeerida:
Näiteprogramm. Arvu positiivsuse kontroll
arv = 1 if arv > 0: print("positiivne") else: print("mittepositiivne")
Pythonis on programmi struktuuri korraldamisel äärmiselt oluline õige taandamine ehk tühikutega mingi rea paremale poole lükkamine. (Teistes keeltes võivad selles rollis olla näiteks looksulud { } ). Proovi näiteks taanet niimoodi muuta:
Näiteprogramm. Vale taandega programm
arv = 1 if arv > 0: print("positiivne") else: print("mittepositiivne")
Siin üritasime käivitada vigast programmi. Seda juhtub programmeerimisel alatihti ja seda pole vaja karta. Proovi programm ära parandada ja uuesti käivitada.