Teooria ja ülesanded - 2. tund

Tartu ülikooli tasuta Pythoni kursus internetis


Kursus algab 10. oktoobril, internetis:


------------------

Eelmise tunni keerukamad ülesanded

  • Pane microbit nupu vajutuse peale mängima mõne laulu esimest rida (nt "Rong see sõitis tsuhh-tsuhh-tsuhh"). LAHENDUS
  • Ava Microbit Javascript editor https://www.microbit.co.uk/create-code ja kirjuta microbit'i ekraanile oma nimi. LAHENDUS 1, LAHENDUS 2
  • Täienda eelmist ülesannet nii, et sinu eesnimi kirjutatakse nupu A vajutuse peale, see jookseb ekraanil niikaua kuni nuppu B pole vajutatud. Kui nuppu A ja B korraga vajutada, lähevad ekraanil jooksva nime tuled järjest nõrgemaks, nii et nimi hajub vaikselt ekraanilt ära.
LAHENDUS - LIHTSAM
LAHENDUS - KEERUKAM 


------------------


Logo - kilpkonna juhtimine 


Liiguta kilpkonna vastavalt juhistele:
Screenshot from https://turtleacademy.com/ 


------------------


Python - kilpkonna juhtimine


  • Ava arvuti Start menüüst Python 3.5 - IDLE (Python 3.5 ...). Seda kutsutakse "Python shell" aknaks.
  • Avanenud aknas vali menüüst File - New File
  • Salvesta fail nimega "turtle1.py"
  • Kirjuta sinna kood:



  • Salvesta ja testi (vajuta klaviatuuril klahvi märgiga F5 või vali menüüst Run - Run module)
  • See on Pythoni kilpkonna programm, üsna sarnane Logo kilpkonnaga
  • from turtle import * - tähendab seda, et Pythonis ei ole kõik funktsioonid kohe niisama kätte saadavad, sest neid on palju. Seetõttu on nad liigitatud otstarbe järgi ja peidetud moodulitesse. Moodulid on nagu kapi riiulid, kuhu on pandud erinevad asjad, näiteks Pythonis on eraldi moodul matemaatikafunktsioonide jaoks, kilpkonnafunktsioonide jaoks (näiteks forward, left) jne. Selleks, et neid kätte saada, ütleme programmile, kuskohast need leida (ehk impordime).

------------------


Ülesanded 1

  1. Joonista Pythoni kilpkonna programmi abil ekraanile ruut. LAHENDUS
  2. Joonista Pythoni kilpkonnaga ekraanile kolmnurk või mõni muu kujund. LAHENDUS


------------------


Pythoni programmeerimiskeel 



Erinevaid programmeerimiskeeli on väga palju. Iga programmeerimskeele võimalused on erinevad, mõned sobivad paremini veebilehtedele erinevate vidinate loomiseks, teised arvutiprogrammide või mängude loomiseks, kolmandad seevastu igasuguste erinevate masinate jaoks programmide loomiseks (nt autod, häiresüsteemid, külmkapid, telerid) jne.





Miks Python?

  • Hea, lihtne keel programmeerimise õppimise alustamiseks
  • Erinevad programmeerimiskeeled on erineva n-ö "lauseehitusega", kuid loogika on igal keelel sarnane. Kui õpid programmeerima ühes keeles, on tunduvalt lihtsam teisi keeli juurde õppida
  • Hoolimata lihtsusest saab Pythoniga ka päris keerukaid asju ja programme teha
  • Python on hea, kerge keel "prototüüpimiseks" - tihti luuakse mingi arvutiprogrammi esialgne kavand, mudel Pythonis ning hiljem "tõlgitakse ümber" mõnda kiiremasse keelde 

Kes kasutavad Pythonit?

  • Yahoo Maps (aadressiotsing Pythoni skriptide abil)
  • Google (Google otsinguteenuse n-ö "robot", kes otsib internetist uusi lehekülgi, mida Google'sse lisada, on osaliselt Pythonis programmeeritud)
  • Walt Disney Feature Animation (kasutab Pythonit mõnede animatsioonide loomise lihtsustamiseks)
  • NASA (mõnedes planeeringusüsteemides)
  • Nokia (esimesed nutitelefonide operatsioonisüsteemid ja nende programmid ehk äpid olid programmeeritud Pythonis. Tänapäeval Pythonit mobiiliäppide loomisel enam eriti ei kasutata, ehkki seda on võimalik teha)
  • Pythonit kasutavad oma veebilehtede arenduste juures Eestis mitmed firmad (Python ei ole veebilehtede arendamisel põhiline keel, kuid aitab näiteks mõningaid andmebaasisüsteemide lahendusi lihtsustada jm teha)


Mõned Pythonis loodud programmide / mängude näited



Näide mängu The Adventure of Tom avalehest


------------------


Pythoni teine programm


  • Ava arvuti Start menüüst Python 3.5 - IDLE (Python 3.5 ...). See on nn "Python shell" aken
  • Ava avanenud aknas vali menüüst File - New File
  • Kirjuta sinna lause: print("Hello world!") 






  • Salvesta fail nimega "Hello.py"
  • Käivita programm, vajutades F5 (või vali menüüst Run - Run Module)


-------------------

Kolmas programm


  • Täienda eelmist programmi või ava File - New File 
  • Kirjuta programmifaili lause input("Sinu nimi: ")
  • Salvesta programm ja käivita see nupu F5 abil.



  • input("Sinu nimi: ") - kirjutab ekraanile küsimuse "Sinu nimi: " ja jääb nüüd ootama, et sa kirjutaksid oma nime. Kirjuta oma nimi ja vajuta ENTER klahvi.
  • input käsk ütleb arvutile, et oota, mida kasutaja sulle vastab.


-------------------

Neljas programm - nimepidi tervitus

  • Täiendame eelmist programmi nii, et see küsib meilt nime ja kui oleme oma nime vastanud, tervitab arvuti meid nimepidi:

  • Selleks peame oma nime arvuti mällu salvestama, et ta pärast meie nime mäletaks ja meid nimepidi tervitaks.
  • Nime arvuti mällu salvestamiseks kasutame muutujat. Muutujale võime ise nime anda (näiteks x, y, nimi, myvariable vms nimetus).
  • x = input("Sinu nimi: ") - salvestab nime, mida arvutile vastame, muutujasse x, see jääb arvuti mällu (nagu matemaatikas, kus x väärtuseks võime anda x=5, x=6 jne. Program-meerimisel võime x väärtuseks anda ka inimese nime või midagi muud, mis ei pea olema arv.)
  • Selleks, et arvuti meile nüüd selle peale midagi vastaks, peame seda talle ütlema käsu "print" abil.
  • print("Tere, ", x) - tähendab, et arvuti prindib meile ekraanile sõna "Tere," ja lisab sinna järgi ka meie poolt vastatud ja mällu salvestatud nime, mille me salvestasime muutujasse x.

-------------------

Viies programm - arvude summa

  • Liidame kaks arvu
  • Salvestame esmalt kaks arvu muutujatesse x ja y (arvuti mälus) ja seejärel liidame need ning kirjutame tulemuse ekraanile:



-------------------

Kuues programm 

  • Täiendame eelmist programmi. Ütleme arvutile, et ta peab meie käest küsima 2 arvu ja need liitma:



Selgitus:
  • input("Sisesta x: ", x) - ütleme arvutile, et ta laseks meil oma suva järgi sisestada mingi x. Sama teeme y kohta.
  • print(x+y) - arvuti liidab x ja y väärtused ja trükib vastuse ekraanile
  • Sisestame arvutile x väärtuseks 3 ja y väärtuseks 5. Summana teatab arvuti meile arvu 35. Miks?
Viies programm. Tulemus, mida näeme pärast programmi käivitamist arvuti ekraanil.
Esmalt ootab arvuti, et sisestame x väärtuse. Seejärel y väärtuse.
Vastusena teatab ta meile summa 35

  • input-käsk ütleb arvutile, et ta peab sinu käest ekraanil ootama mingit teksti. Seetõttu vaatleb arvuti arve, mida sa talle ekraanile kirjutad, tekstina, aga mitte arvudena. Ja liitmise asemel kirjutab ta need arvud (mis tema arvates on hoopis kaks sõna) üksteise kõrvale: 35.

-------------------

Seitsmes programm

  • Täiendame eelmist programmi ja ütleme arvutile, et need arvud, mida me talle x ja y väärtusteks kirjutame, on arvud, aga mitte tekst.
  • teksti aitab arvuks muuta näiteks int(). Int tähendab Pythoni programmeerimiskeeles täisarvu. 

  • int(x) - muudab muutuja x väärtuse täisarvuks
  • int(y)  - muudab muutuja x väärtuse täisarvuks
  • print(int(x)+int(y)) - arvutab ja prindib välja täisarvude x ja y summa.


-------------------


Ülesanded 2. Loo programm, mis: 


1. Kirjutab ekraanile "Kevad on juba käes". Lisa programmifaili ka üks kommentaar.
LAHENDUS

2. Küsib naabri nime ja laseb siis selle pärast käivitamist sisestada.

LAHENDUS 1,
LAHENDUS 2 (selgitustega)

3. Küsib kaks arvu, liidab need ja hiljem jagab

4. Leiab vastuse tehtele 1536*7/2+5-11*6
LAHENDUS

5. Võrdleb kahte arvu ja teatab suurema


Lisaülesanded

6. Loo programm, mis küsib kasutajalt, mis tehet ta soovib teha (näiteks: liitmine, lahutamine, korrutamine, jagamine). Programm genereerib kasutajale vastava tehte ja ootab vastust. Kui kasutaja on vastuse sisestanud, kontrollib programm seda ja annab tagasiside (õige/vale).

ÜKS LAHENDUSE VARIANT


---------------------------------------------------------


Codecademy - Pythoni harjutused

  • Soovitav teha konto, siis säilib ka see, mis eelnevalt teinud ja õppinud oled.
  • Et Codecademy programmeerimise õppimise keskkondadele ilma sisse logimata ligi pääseda, tuleb lehekülje allosast valida sobiv programmeerimiskeel, nt Python:


  • https://www.codecademy.com/learn/python
  • Sealt vali Syllabus:
  • Edasi saab valida, mis tasemelt alustada, näiteks algusest: 1. Python Syntax
  • Selle pealt esimene valik: Python S



  • Veebilehe vasakus servas on juhendid ja programmeerimise aknasse tuleb kirjutada oma kood:


  • Et kontrollida oma kirjutatud koodi, vajuta nuppu "Save & Submit Code". See teatab, kas kood on õige. Kui on õige, tuleb selle kohta teade ja avaneb veebileht uue ülesandega. Kui on vale, tuleb kood üle vaadata ja parandada.
  • Kui soovid oma koodi kustutada, võid vajutada Reset Code.

---------------------------------------------------------


Kodused tööd


Lisaülesanne

  • Proovi Codecademy's läbida tingimuslausete peatükk: 
https://www.codecademy.com/learn/python

  •  (Kui oled Codecademy't varem kasutanud, vali tase, mis tundub sulle sobiv ja püüa see tase läbida. Küsimused võib vajadusel saata katlin7@gmail.com





Kommentaare ei ole:

Postita kommentaar