Materjalid koostas ja kursuse viib läbi
Tartu Ülikooli arvutiteaduse instituudi programmeerimise õpetamise töörühm
< eelmine | 6. OSA sisukord | järgmine > |
Lisamaterjale ja lisaülesandeid
Siia on kogutud selliste materjalide linke, mis avardavad teie teadmisi.
Julgesti võite linke juurde pakkuda!
Lisaülesanne: Supp. (Ühtegi suppi ei sööda nii kuumalt, kui seda keedetakse)
Kausitäis paprikasuppi jahtub minuti jooksul 19% võrra supi ja ruumi temperatuuride vahest. Koostage programm, mis küsib sööjalt supi algtemperatuuri ja toatemperatuuri (just sellises järjekorras) ning väljastab, milline on supi täisarvuni ümardatud temperatuur 10 minuti pärast. Ümardamiseks saab kasutada funktsiooni round. Katsetage ise, kuidas funktsioon round töötab!
Eeldame, et supi algtemperatuur on väiksem kui 100 kraadi ja toatemperatuur on üle nulli. Lihtsalt supi keemise ja külmumise puhul ei ole see mudel õige, programm võib põhimõtteliselt töötada küll.
Näide programmi tööst:
Selle ülesande lahenduse võib esitada Moodle'is ja saada automaatset tagasisidet, aga kohustuslik see ei ole.
Lisaülesanne: Auto registreerimisnumber Eestis
Kirjutage programm, mis küsib kasutajalt auto registreerimisnumbri ja kontrollib, kas see on Eestis võimalik. Kui on, siis väljastada ekraanile "On Eesti registreerimisnumber". Kui mitte, siis väljastada "Ei ole Eesti registreerimisnumber". Lihtsuse mõttes piirdume eeldusega, et registreerimisnumbris peab olema kolm numbrit ja siis kolm tähte (mis ei ole täpitähed). Lubame ka näiteks selliseid, kus numbriosa on 000. Ei luba aga selliseid, kus on kahenumbriline numbriosa.
Vihje:
- "[0-9]" - üks number
- "[A-Z]" - üks suur täht
- "[A-Z]{2}" - looksulguses arv näitab, mitu korda eelnevat võtta, antud juhul siis kaks tähte
- $ abil saab märkida sõne lõppu, nt. "a$" - täht a ja lõpp
- ^ abil saab märkida sõne algust, nt. "^a" - sõne algab tähega a
- sõne algust saab kontrollida ka funktsiooniga match, nt. match("a") - sõne algab tähega a
Näited programmi tööst:
Selle ülesande lahenduse võib esitada Moodle'is ja saada automaatset tagasisidet, aga kohustuslik see ei ole.
Lisaülesanne: Erinevate riikide autode registreerimisnumbrid
Erinevate riikide autode registreerimisnumbrid on üsna erinevad ja pakuvad väga palju toredaid võimalusi regulaaravaldise ülesanneteks. Püstitame siin väga avatud ülesande.
- Valige mingi riigi autode registreerimisnumber.
- Sõnastage nõuded registreerimisnumbrile.
- Kirjutage programm, mis kontrollib, kas sõne vastab nõuetele.
- Kuna põhirõhk on siin regulaaravaldisel, siis pole oluline, kas sõne küsitakse kasutajalt või on juba programmi sisse kirjutatud.
Paljudel juhtudel võib täieliku kontrolli tegemine olla päris keeruline. Sellisel juhul tehke nõuetes lihtsustusi.
Erinevate riikide autode registreerimisnumbrid (inglise keeles)
Seda ülesannet võib lahendada ka teiste huvitavate koodide/tähiste jms. Näiteks erinevate riikide isikukoodidega.
Selle ülesande lahendused võib saata vastavasse Moodle'i foorumisse. Muidugi seal saab lahenduste üle ka arutada, enda ja teiste saavutuste üle rõõmustada.
< eelmine | 6. OSA sisukord | järgmine > |