ITI0011-2016:Eksami ülesanne
Siin lehel on välja toodud mõned ülesanded, mida võib teha arvutis tehtava ülesande asemel.
Tudeng, kes soovib teha mõne nimetatud ülesannetest, peab sellest teada andma semestri lõpuks. Kirjalik eksam tuleb sellegipoolest sooritada.
Tehtud ülesanne tuleb kaitsta eraldi kokkulepitud ajal. Lisaka kaitsmisele tuleb lahendada mõni lihtsam praktiline ülesanne.
Ülesanne koos kaitsmisega annavad kokku 30 punkti.
Üldised nõuded ülesannetele
- Stiil korras. Konstandid ei ole THREE, FOUR. Samuti ei kasuta 2 + 2 + 1 jne.
- Töö erietapid gitis (vähemalt 5 tk, korralike kommentaaridega)
- Ise tehtud. Iga sümbol koodis on arusaadav.
- Graafiline osa kasutab JavaFX-i (alternatiivselt võib Androidi peale teha).
Valikuline:
- ühiktestid
Matlab
Realiseerida programm, millega saab sooritada järgmisi tegevusi:
- graafiku joonistamine: trigonomeetria, kuni kolmanda astme võrrand
- ekstreemumpunktide leidmine (joonisel märgitakse ära)
- saab hiirega joonistada polügoni graafikule
- programm näitab polügoni pindala
- polügoni punkte saab muuta
- polügonide ühisosa
- interaktiivne keskkond (saab sisestada käske ja nendega programmi juhtida)
Börsi ennustamine
- Yahoo finance API (leida üles, kasutada)
- Kasutada 30p ajalugu, et ennustada järgmise päeva tulemusi.
- Virtuaalne "börsimäng". Alguses on mingi X raha, saad reaalseid aktsiaid osta ja näed, kuidas raha tuleb/läheb.
- Mängida saab ajaloo pealt, mis võimaldab kiiremat "läbimängimist".
- GUI: graafikud, mängija poolt tehtud otsuste ja päristulemuste võrdlus
Fractal animation
- Mitte teha mandelbrot, julia set jm "tavalised"
- Dünaamiline fractal
- näiteks: https://www.youtube.com/watch?v=O5RdMvgk8b0
- Aeg-ajalt algo muutub
- Ei tohiks olla ilmselgelt kordav (juhuslikkus olgu suur)
Pilditöötlusprogramm
Pildi joonistamine, salvestamine, avamine. Mingid efektid. undo/redo. Salvestab png vms. Lisaks salvestab faili, kus on undo ajalugu olemas. Erinevad layerid, mida saab ette- või tahapoole saata.
Algoritmi visualiseerimine
Luua labürindi genereerimise programm, milles visualiseeritakse lühima tee leidmist. Võib luua mänguliselt. Otsitavaid objekte peaks olema rohkem kui üks. Kõik võimalikud objektid tuleb üles leida. Lisaks peaks olema mõni liikuv takistus (näiteks pahalane, kelle pihta ei tohi minna), mida peab vältima.
Programmeerimiskeel ja selles realiseeritud mäng
Luua programmeerimiskeel. Programm kirjutatakse faili, fail parsitakse ja tõlgitakse Java käskudeks. Uues keeles ei tohiks kasutada lihtsaid aliaseid/käskude nimetuste vahetamist. Keelega peaks saama teha järgmisi operatsioone:
- failist lugemine
- funktsioonide väljakutsumine vaikeväärtustega (nagu pythonis,
f(a, b = 1)
) - GUI
Luua oma programmeerimiskeeles:
- hello world
- rekursiooni näide
- lihtne ussimäng