Esmaspäev, 25. september 2017

Tsüklid ja muutujad

Tsükli mõistet kasutatakse programmeerimises korduvate tegevuste puhul. Tsükli sisuks on tegevused, mida tuleb korrata ning tsükli "raamiks" on tingimus, kui palju ning mis tingimustel neid tegevusi tehakse.

Lihtne kordus
Tsükli alguses määratakse (arvuliselt), mitu korda tegevust tehakse. Tsükkel võib olla ka lõpmatu ehk tegevust jäädaksegi kordama.

Näide: retseptis on vaja taignasse lisada 3 muna. Kuna korraga saame lisada ainult 1 muna, siis peame muna lisamist tegema 3 korda.

Tingimuslik kordus
Tegevust tehakse juhul, kui on täidetud mingi tingimus. Tegevus võib alata siis, kui tingimus on täidetud või kesta seni, kuni tingimus on täidetud.

Näide pannkoogi algoritmist - lisame taignale piima seni, kuni tainas on piisavalt vedel


Muutujad

Selleks, et programm saaks sisestatud andmeid (kasutaja vastus, mõni välja arvutatud tulemus) ka edaspidi kasutada, tuleb kasutusele võtta muutujad.

Muutuja on nimega varustatud koht arvuti mälus, kuhu saab salvestada mingi väärtuse, näiteks arvu, teksti jms. Seda väärtust saab programm edaspidi kasutada, näiteks kuvab kogutud punktid, arvutab uue väärtuse või käivitab järgmise protsessi (kui muutuja väärtus saab võrdseks mingi muu väärtusega).

Allolev algoritm arvutab kasutaja sisestatud 5 arvu summa ning väljastab selle. Arvude loendamiseks ning summa arvutamiseks on kasutusele võetud muutujad SUM ja n.


Miks on vaja ülaloleva algoritmi puhul muutujate väärtus alguses 0-ga võrdsustada?

Ülesanne 1
Koosta plokkskeem, mis küsiks kasutajalt kõigepealt, mitu arvu ta soovib kokku liita ning laseks kasutajatel sisestada soovitud hulgal arve, liidaks need kokku ning väljastaks summa.

Pühapäev, 24. september 2017

Hargnev algoritm

Algoritme, kus edasiste sammude täitmine sõltub mingist tingimusest või vahetulemusest, nimetatakse hargnevateks algoritmideks.

Näide - plokkskeem, mis sisestatud punktide põhjal väljastab hinde.


Ülesanne 1. Kirjuta plokkskeem, mis kontrolliks, kas sisestatud arv on positiivne või negatiivne ning väljastaks vastavalt teksti "positiivne arv" või "negatiivne arv".
Lisaülesanne: täiusta oma algoritmi nii, et juhul kui arv = 0, väljastaks programm vastava teate!

Ülesanne 2. Täiusta näiteks toodud hinde plokkskeemi nii, et see kontrolliks, et sisestatavad punktid jääksid vahemikku 0-100.

Ülesanne 4. Keerulisem ülesanne (selle edukal lahendamisel on võimalik saada hinne Stuudiumisse, pead oskama ka oma lahendust selgitada).
Proovi välja mõelda ja kirja panna plokkskeem, mis:
1. Küsib kasutajalt maksimumpunktisumma, mis töö eest võib saada. 
2. Küsib kasutajalt töö eest saadud punktisumma. 
3. Arvutab välja protsendi
4. Väljastab protsendile vastava tähe (hinde).

Draw.io keskkonna kasutamine plokkskeemide joonistamiseks.

NB! Plokkskeemide joonistamiseks kasuta valikut Flowchart ja salveta valmis diagramm Google Drive programmeerimise kausta (Save as ... vali Google Drive ja siis logi vajadusel kooli e-postiaadressi ja parooliga sinna sisse).



Kolmapäev, 13. september 2017

Mis on programmeerimine?

Programm on käskude jada, mis on kirja pandud arvutile arusaadavas keeles. Programmeerimine on selle programmi kirjapanemine.

Programmeerimise töö sisaldab endas mitut etappi:
1. esmalt tuleb ülesannet analüüsida (seda tuleb loomulikult teha programmeerimise käigus pidevalt) - millised on eesmärgid, millistele vajadustele peab programm vastama jms
2. programmi kirjutamine ja analüüs
3. testimine ja vigade parandus

Erinevate rakenduste puhul lisandub programmeerimisele ka veel disain - selleks, et inimesel oleks mugav programmi kasutada või et inimene tahaks programmi kasutada, peab sel olema ka hea disain.

Kõikide nende tegevuste jaoks on vaja inimesi. Seega kõikidest ei peagi saama programmeerijad - vaja on ka testijaid, disainereid ja projektijuhte.

Programmeerimine on tänapäeval meeskonnatöö.


Teisipäev, 12. september 2017

Algoritmid ja plokkskeemid

Programm on enamasti teatud kindlate tegevuste jada, mis viib mingile lõpptulemusele (programm teeb midagi).

Programmeerimine on selle programmi kirjutamine.

Ülesande lahendamiseks vajalikku plaani, mida järgides on võimalik jõuda tulemuseni, nimetatakse algoritmiks. NB! Lahenduseni jõudmiseks on sageli mitu teed!

Algoritmi kohta öeldakse tihti ka lihtsalt protseduur.

Algoritmil on neli olulist omadust:
  1. Algoritmi iga samm peab olema täpne, st olema ühetähenduslik.
  2. Algoritm peab olema lõplik. Vastasel juhul me ei saa probleemile lahendust.
  3. Algoritm peab olema efektiivne, st ta peab andma probleemile korrektse vastuse.
  4. Algoritm peab olema üldine, st ta peab lahendama ülesande iga eksemplari. Näiteks ringi pindala leidmise algoritm peab sobima kõigi võimalike algandmete jaoks.

Allikas: https://courses.cs.ut.ee/MTAT.03.100/2012_fall/uploads/opik/04_algoritmid.html

Üks algoritmi näide (pannkookide valmistamine):
1. võta kauss
2. võta 3 muna
3. klopi munad lahti
4. lisa 3 supilusikatäit jahu
5. lisa maitse järgi suhkrut
6. lisa veidi soola
7. sega
8. lisa piima, kuni segu on piisavalt vedel
9. pane pann tulele
10. lisa pannile õli ja oota, kuni õli on kuum
11. võta kulbiga pannkoogitainast
12. vala tainas pannile
13. oota kuni üks pool on küpsenud kuldseks
14. keera pannkook ümber
15. oota, kuni teine pool on küpsenud kuldseks
16. tõsta pannkook pannilt taldrikule

Ülesanne 1
  1. Logi Google Drive keskkonda (kooli e-postiaadress ja parool!), loo sinna kaust nimega "Programmeerimine" ja jaga seda õpetajaga (vilve.roosioks@g.viimsi.edu.ee).
    • JUHEND kausta loomiseks ja jagamiseks
  2. Ava kaust ning loo sinna uus dokument (UUS -> Google'i dokumendid).
  3. Pane dokumenti kirja üks algoritm. Näited: mõni retsept, juhend kuidas jõuad kodust kooli või koolist koju, kuidas õpid inglise keele sõnud vms. Nummerda tegevused, et algoritmi oleks lihtsam jälgida (vt pannkoogi küpsetamise näidet eespool!).


Algoritme pannakse sageli kirja plokkskeemidena. Plokkskeemide komponendid võib lühidalt kokku võtta nii (vt allolevat pilti):

_images/l04_fig9.png
Pilt: https://courses.cs.ut.ee/MTAT.03.100/2012_fall/uploads/opik/_images/l04_fig9.png
Igast plokist saab väljuda üks nool, välja arvatud tingimusest (Otsustuse plokk), mille puhul väljub kaks noolt vastavalt pealkirjadega "jah" ja "ei", samuti ei välju lõpust ühtki noolt, siseneda võib rohkem nooli.

Eelpool toodud algoritm võiks plokkskeemina välja näha selline:

Plokkskeemide joonistamiseks on sobiv näiteks:


Veel mõni näide plokkskeemist (jõuluvana): http://progetiiger.cs.ut.ee/sites/default/files/Python/algoritm_jouluvana.png
(enne kooli): http://www.gliffy.com/go/publish/image/8913231/L.png

Ülesanne 2 - Pane ülesande 1 algoritm plokkskeemina kirja!
  1. Vali sobiv keskkond!
  2. Proovi ülesandes 1 kirja pandud algoritm plokkskeemiks kokku panna. Mõtle, milliseid plokke milliste tegevuste kirjeldamiseks võiks kasutada!
  3. Salvesta loodud plokkskeem Google Drive, ülesandes 1 loodud kausta "Programmeerimine".

Kolmapäev, 5. aprill 2017

Python - tsükkel ja juhuslikud arvud

Vahel on vaja mingeid tegevusi teha korduvalt. Näiteks soovime, et programm kirjutaks meile soovitud arv kordi teksti "Python on tore"

tekst = "Python on tore"
i = 0
while i < 3:
    print(tekst)
    i = i + 1

Kordusi saab Pyhtonis kõige lihtsamalt kirja panna while-tsükli abil. Pööra tähelepanu sellele, et while rida lõpeb jällegi kooloniga ning kirjeldatud tsükkel on trepitud. Kindlasti tuleb lisada tsüklisse ka muutuja i muutumine (antud juhul suureneb muutuja iga tsükli sammuga 1 võrra i = i + 1) ja muutuja i enne tsükli algust defineerida ehk anda talle mingi algväärtus, mis tsükli töö käigus muutuma hakkab.


Ülesanne 7
Täienda ülalolevat koodi nii, et teksti saaks sisestada programmi kasutaja. Samuti peaks kasutaja saama sisestada korduste arvu (praegu näites on selleks arvuks 3).


Juhuslik arv

Vahel on vaja, et programm leiaks meile juhusliku arvu mingis kindlas vahemikus (Scratchis oli selleks plokk "juhuarv 1 kuni 10").
Pythonis on olemas funktsioon randint (arv1, arv2), mis genereerib meile juhusliku täisarvu vahemikus arv1 kuni arv 2. Selle funktsiooni kasutamiseks on aga vaja programmile teada anda, selleks tuleb programmi algusesse lisada rida:

from random import randint

Kui soovime, et muutuja väärtuseks saaks juhuslik täisarv vahemikus 1 - 20, siis pannakse see Pythonis kirja nii:

arv = randint(1, 20)

Katseta järgmist koodilõiku. Kas iga programmi käivituse korral prinditakse ekraanile uus arv?

from random import randint
arv = randint(1,20)

print(arv)


Kui lisame juhuarvu genereerivale programmile while-tsükli, siis saame näiteks ekraanile printida mitu juhuarvu. Katseta järgmist programmilõiku, et veenduda randint funktsiooni töös.

from random import randint
i = 0
while i < 3:
    arv = randint(1,20)
    print(arv)

    i = i+1



Ülesanne 8 - arvu äraarvamise mäng
Teeme mängu, kus arvuti genereerib juhusliku arvu (näiteks vahemikus 1 - 20) ning kasutaja peab selle siis ära arvama. Programm annab arvamiseks vihjeid, kas kasutaja sisestatud arv on suurem või väiksem programmi poolt mõeldud juhuslikust arvust.

Proovi alguses ise programmi kirjutada, kui jääd hätta, siis leiad mõtteid siit

== on võrdne (kaks võrdusmärki järjest, ainult üks võrdusmärk oleks omistamine!)
< on väiksem
<= on väiksem või võrdne
> on suurem
>= on suurem või võrdne
!= on mittevõrdne


Ülesanne 8 (täiendus)
Täienda mängu nii, et programm loeks ka katseid, mis õige arvu arvamiseks kuluvad ning väljastaks õige arvu sisestamisel ka selleni jõudmiseks kulunud katsete arvu.

Ülesanne 9 - matemaatika mäng
Tee matemaatika õppimiseks mäng, kus
  1. Programm küsib kasutajalt, millistes piirides ehk kui suurte arvudega ta soovib arvutada (juhuarvude vahemiku piirid),
  2. programm küsib kasutajalt, mitu tehet ta soovib teha, 
  3. genereerib iga kord uued juhuslikud arvud, 
  4. laseb kasutajal sisestada nende arvude summa,
  5. kontrollib, kas vastus on õige ja väljastab vastava teate,
  6. väljastab programmi lõpus, mitu tehet õigesti vastati.
Täiendus matemaatikamängule
  • Programm väljastab vale vastuse korral vastava teate ja ka õige vastuse
  • Programm väljastab lõpus õigete vastuste %


Pilt: http://www.agent-x.com.au/wp-content/uploads/2011/06/Perfect-Programmer-dfe194b-e8d3b11-b960bd5.jpg

Teisipäev, 28. märts 2017

Python - tingimuslaused

Tingimuslausetes sõltub programmi edasiminek tingimusest (kas on täidetud või mitte, vastavalt sellele valitakse edasine tee).
Kui tuletate meelde kursuse algust, siis tingimuslaused panime plokkskeemis kirja rombiga ning sellest oli 2 väljundit - mis saab edasi siis, kui tingimus on täidetud, ja mis juhtub siis, kui tingimus ei ole täidetud.

Pythonis on selleks if ... else lause.

Näide:
Küsime kasutajalt parooli ja kui parool on õige, siis ütleb programm, et parool on õige ning kui vale, siis ütleb seda ka.

Katseta järgmist koodi Thonnys

parool = input("Sisesta parool: ")
if parool == 1234:
      print("Õige parool")
else:
      print("Vale parool")

Pööra tähelepanu if ... else süntaksile:

  • if tingimuse lõpetab koolon ning tingimuse täitmisel rakenduv rida (antud näite puhul print) tuleb taandega 
  • else rea lõpetab samuti koolon ning else tingimuse täitmisel rakenduv rida on samuti taandega.

Kas ülalolev programm töötab korrektselt? Kui ei, siis tuleta meelde eelmisel tunnil õpitud sõne ja arvu teema!
Korrasta oma programmi selliselt, et see annaks õige parooli sisestamisel vastuse "Õige parool"!


Ülesanne 5

Palu kasutajal sisestada oma vanus. Kui vanus on alla 13, siis annab programm teada, et kasutaja on edasipääsuks liiga noor ja kui 13 või vanem, siis teate, et pääseb edasi mängima.


If-lauseid võib olla üksteise sees rohkem - kõigepealt kontrollitakse ühte tingimust ja kui see on täidetud siis järgmist jne. Oluline on seejuures silmas pidada, et if-lausete sees olevad if-laused tuleb kirjutada taandega ehk treppida!

Näide:
Küsime kasutajalt parooli ja õige parooli korral seda, kui vana ta on ning kui on noorem kui 13, siis annab programm teada, et kasutaja on sissepääsuks liiga noor.
NB! Näiteprogrammi algusest näed ka eelmise näite probleemkoha ühte võimalikku lahendust (õigeid lahendusi on loomulikult rohkem).

parool = input("Sisesta parool: ")
if parool == str(1234):
      print("Õige parool")
      vanus = input("Sisesta vanus: ")
      if vanus < "13":
            print("Oled sissepääsuks liiga noor")
      else:
           print("Pääsed mängima")
else:
      print("Vale parool")



Ülesanne 6

Hinnete kalkulaator. Palu kasutajal sisestada KT õigete vastuste % (täisarvuna) ning tee programm, mis väljastaks %-le vastava hinde.
üle 100 % - hinne "A+"
100 - 90% - hinne "A"
80 - 89% - hinne "B"
70 - 79% - hinne "C"
60 - 69% - hinne "D"
50 - 59% - hinne "E"
alla 50% - hinne "F"

Edasiarendus - täienda oma programmi nii, et sisestada saaks ka komadega arve. NB! Pythonis kasutatakse koma asemel punkti! Komaga arvuks teisendab sisestatud numbrid funktsiooni float()


Ülesanne 6 (täiendus) (neile, kellele ülesanne 6 on liiga lihtne).

Täienda hinnete kalkulaatori programmi nii, et see küsiks kasutajalt maksimumpunktisumma ning saadud punktid ja arvutaks ise protsendi ning väljastaks nii protsendi kui sellele vastava hinde (analoogne MIT AppInventori äpiga).

Protsenti saad ümardada soovitud järguni funktsiooniga round(protsent, järk) näiteks round(protsent, 1) ümardab protsendi 1 kohani peale koma.

allikas: http://img1.joyreactor.com/pics/post/comics-how-X-see-python-snake-693251.jpeg


Kolmapäev, 15. märts 2017

Mängu programmeerimine

Need, kes said eelmisel tunnil astendamise või hinnete kalkulaatori valmis, saavad katsetada mängu loomist.

Mängu loomiseks on vaja:
1. Tegelast, kes tulistab (näiteks rakett).
2. Tegelast, keda tulistatakse (näiteks ufo).
3. Tausta, kus tegevus toimub (näiteks kosmos)
    Kui soovid, et tulistamisele lisanduks heli, saad ühe variandi alla laadida siit: paugud

Võid tegelased ise otsida või siis alla laadida nimetuste all olevatelt linkidelt.

Lisa Design vaates ekraanile järgmised komponendid (NB! Nimeta need ümber, et hiljem oleks lihtsam programmi kirjutada).


NB! Kella saad lisada Palette -> Sensors alt. Kui soovid, et mängimisel kostuks ka helid, siis lisa Media -> Sound vahend.

Nüüd programmeerimine objekid järgmiselt:

Ufo - liigub suvaliselt ekraani ülaosas. Ufo hakkab liikuma kohe, kui ekraanipilt ette tuleb. Liikumise kiirust määrab kell (taimer).

Plokk muudab "ufo" x-koordinaati (vasakule-paremale liikumine) suvalise arvu võrra, mis on 0-st kuni tausta laius - ufo laius (et ufo püsiks ekraanil).

Rakett - tulistab ja teda saab sõrmega lohistada mööda ekraani allosa.
Lohistamine

Tulistamine (mängib ka heli) - kuul on muidu peidetud, aga laeva puudutades muutub nähtavaks ja hakkab kiirusega 20 liikuma laeva y-koordinaadi suunas (üles ufo poole).
Kuul - on peidus, kui parasjagu ei tulistata

Kui liigub ekraani serva, siis läheb samuti peitu (Visible to false).
Kui kuul põrkab kokku teise objektiga (ufo), siis lisandub skoorile 1 punkt juurde, kuul läheb peitu ja ufo liigub mujale.

Programmeeri nupp "UUESTI" nii, et sellel vajutamine nulliks skoori.

Lisaülesanne!

Tee mängule lõpp - näiteks et 10 punkti täitumisel saaks mäng läbi.



Idee: http://www.instructables.com/id/How-to-Make-a-Space-Invaders-Game/?ALLSTEPS

Kolmapäev, 8. veebruar 2017

Astendamise äpp

Täna proovime teha valmis ühe äpi, mille abil saab astendada.

Ülesanne 1 - vajalike väljade lisamine

Selleks, et äpp oleks valmis kasutaja sisestatud arvu astendama, tuleb kõigepealt tekitada võimalus arvude (astendatav ja astendaja) sisestamiseks ehk ekraanile tuleb mõlema sisestamise jaoks lohistada tekstikast (TextBox).
Hea oleks ka, kui kasutaja teab, millisele väljale millise elemendi sisestamist oodatakse. Selleks saab lisada sildi (Label).

Kui on soov näiteks silti ja tekstikasti ühel real kuvada (vt ülalolevat pilti), siis selleks saab lisada Palette valikust Layout alt elemendi HorizontalArrangement. Nüüd tuleb silt ja tekstikast lihtsalt sinna sisse lohistada.
Astendamise tehte tegemiseks tuleb lisada nupp "Astenda" (vms kirjaga) ja vastuse näitamiseks silt (Label), kuhu vastus ilmub.
Algseadete taastamiseks (et saaks jälle uusi arve astendada) on kasulik lisada ka nupp kustutamiseks.
NB! Lisatud elementidele on kasulik anda uus nimi, siis on neid hiljem programmeerimises lihtsam kasutada.

Ülesanne 2 -astendamise programmeerimine

Edasi avame Blocks vaate ning lisame nuppudele vastavad tegevused (nupp Astenda astendab ja Kustuta tühjendab väljad).


Testi oma äppi!

Lisaülesanne!

Mida parandab äpi juures, kui nupul Astenda klõpsamine käivitab järgmise koodiploki?




MIT AppInventor - oluliste veebilehtede äpp

Ülesanne 1 - oluliste veebilehtede äpp - välimuse loomine
Teeme äpi meie jaoks olulistest veebilehtedest - näiteks kooliäpp, milles on nupud kooli kodulehele või selle olulisematele alamlehtedele (tunniplaan, kelle EduPage äppi pole) ja näiteks programmeerimise valikaine blogi avamiseks. Igal lehel on ka nupp tagasi, mis viib tagasi esimesele lehele.
  1. Lohista töölauale "Label" ning lisa sinna paremal paneelis sobiv tekst (näiteks "Minu olulised veebilehed").
  2. Lohista töölauale nii mitu nuppu (Button), kui paljudele veebilehtedele tahad oma äpi abil minna (esialgu näiteks 2 - kooli kodulehe ja Stuudiumi jaoks).
  3. Edasi lisa uus lehekülg (Screen). Selleks klõpsa töölaua kohal olevat nuppu Add Screen ja anna uuele lehele nimi (NB! Nimes ei tohi olla tühikuid ega täpitähti).
  4. Screen1 valiku alla ilmub nüüd uus leht. Ava see ning lohista sinna nupp, millele tekita kiri "Tagasi" või "Avalehele".
  5. Lisa vasakult paneelist töölauale Webviewer - element, mille sees kuvatakse veebilehekülge. Veebilehe aadress (URL) sisesta paremal paneelis HomeURL all olevasse kasti.
  6. Lisa sarnaselt eelmisega ka ülejäänud leheküljed, nii et kõikidel lehekülgedel oleks ülal nupp "Tagasi" ning Webviewer, mille aadressiks on veebilehe aadress, mida soovid seal näha.
Nüüd on äpi välimus valmis, edasi tuleb hakata nuppude tegevust programmeerima.

Programmeerimine

Programmeerimiseks tuleb klõpsata töölaua kohal paremal olevat nuppu Blocks
 Avaneb programmiaken, kuhu saab erinevaid käsuplokke lohistada ning neid omavahel ühendada (meenutab Scratchi).
Lisaks üldistele käsuplokkidele, mis asuvad Built in valiku all, on igal lisatud komponendil veel oma käsuplokkide valik, mis avaneb, kui komponendi nimel klõpsata.
Programmeerimine MIT App Inventoriga ongi õigete käsuplokkide kokkupanek. Kui kusagil on viga või midagi puudu, siis kuvatakse seda töölaua allääres Show warnings kohal.

Ülesanne 2 - oluliste veebilehtede äpp - programmeerimine

  1. Klõpsa nupul "Blocks" ning vali Screen valikutes esimene leht ehk Screen1
  2. Lisame vajalikke plokke nii, et esimesele nupule vajutades avaneks soovitud veebileht (näiteks kooli koduleht). Selleks klõpsa vasakul Blocks paneelis nupu nimel ja vali sealt plokk, mis ütleb, et kui sellel nupul klõpsatakse, tuleb midagi teha ning lohista see töölauale.
  3. Programmeeri sarnaselt ka teine nupp.
  4. Nüüd ava järgmine leht (näites leht nimega Koduleht) ja programmeeri nupp tagasi nii, et ta vajutamisel sulgeks selle lehe (siis jääbki avatuks esimene, kõikide nuppudega leht). Selleks tuleb lisada nupu valikust plokk "When ... Click" ja Control valikust "close screen".
  5. Lisa "Tagasi" nupule käsuplokk ka teise lehe puhul.
Äpi katsetamine

Äpi katsetamiseks klõpsa  App Inventori menüüs sõnal "Build" ja vali sealt App (provide QR code...).
Veidi aja pärast genereeritakse QR kood, mida saab oma nutiseadmega skanneerida ning siis äpi oma seadmesse installeerida (NB! Selleks tuleb seadete alt lubada ebaturvalised installimised, aga need võib peale oma äpi katsetamist uuesti sisse lülitada).

Ülesanne 3 - oluliste veebilehtede äpp - testi oma äppi!

Lisaülesanne
Lisa oma äpi avalehele taustapilt. Nuppude paigutamiseks saad kasutada Layout menüüst erinevaid võimalusi!
Nuppude värvust ja teksti värvust ning suurust saab samuti muuta! Uuri välja, kust seda teha!

Teisipäev, 31. jaanuar 2017

Loendite ülesande viimistlus ja jagamine

Viimistle oma loendite ülesannet!
  1. Lisa mängule taust. 
  2. Lisa sissejuhatav tekst selle kohta, mis programmi või mänguga on tegemist (seda võib öelda tegelane või siis on alguses taustaslaid, millel on tutvustus kirjas).
  3. Lisa reaktsioon õigele ja valele vastusele (vale vastuse korral ütleb tegelane mängijale õige sõna), võimalusel lisa animatsioon.
  4. Lisa teade, mitu % vastatud sõnadest olid õiged.
  5. Lisa teade mängu lõpu kohta.
  6. Peida kasutaja eest mängimise ajaks sõnade loendid (NB! Sõnade sisestamise ajaks too loendid jälle nähtavale).
  7. Jaga valmis mängu oma rühma Stuudios (link blogi menüüs vasakul).
Mõned koodinäited leiad siit Stuudiost: https://scratch.mit.edu/studios/4670173/


Lisaülesanne mängule, kus kasutaja saab sisestada oma sõnad:
  • Täienda oma mängu nii, et kasutaja käest küsitakse mängu alguses, kas ta soovib sisestada oma sõnad või mängida eelmise kasutaja sisestatud sõnadega!
  • Täienda mängu, et korra sisestatud sõnu saaks õppida mitu korda (Vihje: seo sõnade õppimise alustamine mõne klahvi vajutamisega ja kuva mängijale vastav teade!).