Jõed * Loo klass jõe andmete hoidmiseks (nimetus, pikkus(km), vooluhulk (l/s) suudmes). Loo jõele muutujad jõe kohta kuhu ta suubub ning mitmendal kilomeetril. Otse merre suubuva jõe puhul on sihtjõe väärtuseks null. Ehita paarist jõest ahel ning trüki välja läbitavate jõgede nimetused, et etteantud kohast merre jõuda. * Pane lahendus tööle veebilehena. Lisa funktsioon arvutamaks, mitu kilomeetrit on uuritava jõe etteantud kohast (kilomeetrites suudmest) mereni. Koosta automaattestid kauguste arvutamise kohta. * Jõgesid saab objektidena salvestada andmebaasi ja lugeda sealt. Koosta veebiliides jõgede lisamiseks ning suubumiskoha määramiseks. Veebiliides suhtleb REST-teenustega, mis omakorda suhtlevad objektide kaudu andmebaasiga. Jõele lisajõgede lisamisel kontrolli, et jõest väljuv vooluhulk ei oleks väiksem, kui temasse suubuvate jõgede vooluhulkade summa, vastasel juhul heida erind. Anna käsuna välja jõe lisajõed peajõe suudmest etteantud kauguseni. Salat * Koosta klass toiduaine tarbeks (nimetus, valkude, rasvade ja süsivesikute protsent). Protsent kokku ei saa ületada 100 - muidu antakse veateade. Loo mõni toiduaine (nt. kartul, hapukoor, vorst). Koosta klass toidukomponendi tarbeks (kogus, viit toiduainele). Loo mõned toidukomponendid (nt. 100 g kartuleid, 30 g hapukoort, 50 g vorsti). Lisa toidukomponendile käsklus selle sees leiduva rasvakoguse arvutamiseks. * Koosta andmebaasiliidesega veebileht, kus saab toiduaineid objektide kaudu lisada ja kustutada, nime järgi andmeid vaadata ning rasvaprotsendivahemiku järgi otsida. Koosta lisamise, arvutamise, otsimise ja kustutamise kontrollimiseks automaattest. * Koosta klass toidu jaoks (nimetus, toidukomponendid). Toidule käsklused küsimaks sisalduvate valkude, rasvade ja süsivesikute kogust. Loo retsepti järgi toit (nt. kartulisalat), küsi salatis leiduvate toitainete kogused. Koosta veebirakendus, kus näidatakse valitud toidu etteantud koguse (nt. 5 kg kartulisalati) jaoks vajalikud toiduained. Kontrolli automaattestiga arvutuste õigsust. Akordide arvutaja * Loo klass Kolmkõla mazoorkolmkõla nootide arvutamiseks. Konstruktoris antakse sisse täisarvuline põhitoon, eraldi käsuga väljastatakse põhitoon, suur terts (+4) ja kvint (+7). Ehk siis kui põhitooniks on 60 (C), siis väljastatakse arvud 60 64 67. Loo toimimise kontrolliks automaattest. * Loo klassile alamklassid CKolmkõla (põhitoon 60), FKolmkõla(65), GKolmkõla(67). Koosta veebileht, kuhu parameetrina antakse ette taktide akorditähed, kolmkõlaklasside abil väljastatakse mängitavad noodid. Lisa toimimise kontrolliks automaattest. * Kolmkõla klassil on lisaks käsklus arvuliste MIDI-noodinumbrite tähtnimetusteks muutmiseks ning vastupidi. Alates 60st: C C# D Eb E F F# G G# A B H C Lisa Kolmkõlale ka konstruktor, kus antakse ette akordi tähtnimetus ning selle järgi leitakse akordi põhitoon arvuna. Samuti on võimalik akordi noodid trükkida tähtnimedega. Koosta klass Lugu, kuhu iga takti jaoks saab lisada kolmkõla eksemplari. Veebilehele parameetrina antud kolmkõlatähtede põhjal väljastatakse Loo klassi eksemplari kaudu vastavalt kasutaja valikule kas mängitavad noodinumbrid või -nimed. Kontrolli automaattestidega. Joone võrrand * Koosta liides joone y-i väärtuse leidmiseks vastavalt x-i väärtusele. Koosta automaattestid kontrollimaks mitut punkti sirgel y=3x. Koosta realiseeriv klass, millele antakse konstruktoris ette x-i kordaja. Kontrolli klassi eksemplari oskuste vastavust testidele. * Loo teine realiseeriv klass, millele saab ette anda kordaja ja vabaliikme. Kontrolli selle klassi tööd liidese kaudu testidega joontele y=3x ning y=3x+2. Koosta funktsioon, mis saab parameetriks x-ide massiivi ning liidesele vastava y-koordinaate arvutava klassi ning tagastab vastavate y-ite massiivi. Kontrolli klasside ja funktsiooni tööd automaattestidega. * Loo veebi REST-teenus, kuhu sisestatakse a, b ja x-i vähim ja suurim väärtus. Tulemuste arvutamiseks kasutatakse eelnevalt loodud ja testitud funktsiooni, realiseeriv klass valitakse vastavalt b väärtusele - nulli puhul esimene lihtsam variant. Koosta veebiteenuse väljundi kontrolliks automaattest. Ioonid ja ained * Loo liides iooni andmete tarbeks - nimetus, aatommasside summa, laeng. Loo realiseeriv klass, kus nimetus on stringina. Koosta paar näidet - H+, NO3-. Koosta automaattest iooni loomise ning andmete küsimise kohta. * Loo liides aine jaoks. Aine kohta saab küsida nimetuse ja molekulmassi. Koosta realiseeriv klass kahe iooni kokkupanekul tekkiva aine jaoks. Konstruktoris kontrollitakse, et ioonide laengud oleksid võrdsed ja vastasmärgilised. Nimetuses kuvatakse positiivse iooni nimetus eespool. Koosta automaattestid ainete loomise ja molekulmassi arvutamise kohta. Lubatud on näiteks NaCl ja CaO, aga mitte CaCl (sest kaltsium on 2+ ning kloor 1-) * Loo aine liidest realiseeriv uus klass, kuhu eraldi antakse sisse ioonide massiiv. Aine luuakse vaid juhul, kui laengute summa on 0. Nimetuses kuvatakse iooni kordumine vastava numbriga. Nt [Ca2+, Cl-, Cl-] loetakse sobivaks ning kuvatakse CaCl2. Koosta veebiliides, kus sessioonimuutujas olevasse loetellu saab lisada ioone. Kui loetelus olevatest ioonidest saab moodustada aine, siis kuvatakse see vastava klassi abiga ning näidatakse ka aine molekulmass. Geenid * Loo klass alleeli tarbeks. Nimetus (nt reesus) ning tõeväärtus, kas vastav alleel on positiivne. Loo klass geeni tarbeks, mis koosneb kahest sama nimetusega alleelist. Geeni puhul väljastatakse positiivne väärtus juhul, kui vähemalt ühe seal oleva samanimelise alleeli väärtus on positiivne. Koosta kontrollimiseks automaattestid. * Lisa geenile käsklus juhusliku alleeli väljastamiseks. Koosta funktsioon kahe geeni ühinemisel tekkivast uuest geenist, kus kummastki algsest geenist võeti juhuslik alleel. Koosta veebirakendus, kuhu sisestatakse alleeli nimetus ning kummagi vanema alleelide +/- väärtused. Väljastatakse lapsel tekkinud geen ning salvestatakse see andmebaasi. * Kasutaja saab otsida geeni nimetuse järgi. Kasutaja saab valida, millised kuvatud geeniga inimesed omavahel järglase saavad ning järglasel tekkinud vastav geen talletatakse samuti andmebaasi. Tähed * Loo liides, mille ainus meetod saab sisendiks tähe ning väljastab selle tähe esinemise arvu. Loo realiseeriv klass sõna tarbeks. Koosta automaattestid töö kontrolliks näitamaks a, t ja e-tähtede arvu sõnas tere. * Loo liidest realiseeriv klass Lause. Lauselt saab lisaks küsida sõnade arvu ning Sõna-klassi eksemplaride massiivi. Koosta veebirakendus, kus saab ette anda lause ning väljastatakse a-tähtede arv terves lauses ning igas sõnas eraldi. Koosta automaattest veebis lause a-tähtede arvu kontrolli õigsuse kohta. * Kõik lausetes leidunud eri sõnad lisatakse andmebaasi. Veebirakenduse väljundis näidatakse, millised sõnad on sisendlausest uued ning millised juba varem olemas olnud.