Meldimine o Väratit kuulav programm teatab ühendusevõtjale tema järjekorranumbri o Programm küsib ühendusevõtjalt kasutajanime. Juhul, kui sellise nimega kasutajat veel kirjas ei ole, siis ta lisatakse andmebaasi. o Programm küsib ühendusevõtjalt kasutajanime ning parooli. Kui sellise kasutajanime ning parooliga kasutaja leidub, siis väljastatakse serverarvuti kellaaeg. Olemasoleva kasutajanime kuid vale parooli puhul antakse veateade. Puuduva kasutajanime puhul lisatakse kasutaja soovi korral koos sisestatava parooliga andmebaasi. Järgmisel korral selle nime ja parooliga sisse meldides väljastatakse talle kellaaeg. Kabe * Koosta klass kabenupu tarbeks: värvus (must/valge), seisund (kivi/tamm), asukoht(x, y). Katseta andmete loomist ja küsimist. * Koosta klass kabelaua tarbeks: mõõtmed (8x8 / 10x10), algseis (2 rida/3 rida nuppe). Andmete väljatrükk. Loo käsklus nupuga käimiseks: käigu võimalikkuse kontroll, asukoha andmete paika sättimine laua ja nupu poolelt. * Koosta klass laualt käikude automaatsoovitaja tarbeks: reeglitega võimalikud käigud ja hüpped, nende loodetav kasulikkus, parematest käikudest ühe juhusliku valimine. Pane rakendus mõlemalt poolt automaatselt mängima. Maanteeliiklus Autod liiguvad maanteel. Failis on kirjas kõigi teel liikuvate sõidukite asukoht ja liikumiskiirus. Kiirus ei muutu. • Väljasta kõigi autode asukoht etteantud aja pärast. • Lisaks eelmisele leia kõik möödumis- ja vastutuleva autoga kohtumiskohad. • Võrreldes eelmisega on kitsenduseks, et maanteel on kummaski suunas üks sõidurada. Kui parajasti ei ole möödasõit võimalik, sõidetakse eelmise sõiduki sabas 10 meetri kaugusel. Väljasta iga auto kohta tema sõiduskeem: o Millal sõidab oma määratud kiirusega? o Millal ja millise kiirusega ootab teise sõiduki taga? o Millal jõuab maantee algusesse/otsa (koordinaadid 0 ja 200 km)? Pinna täitmine Tekstifaili kaks arvu esimesel real tähistavad järgneva pildi punktide ridade ja veergude arvu (max 500*500). Edasi tuleb pilt ise, kus iga täht tähistab ühte punkti: p-punane, s-sinine, k-kollane, r-roheline, m-must, v-valge. Lõpuks viimasel real on taas kaks koordinaati ja värv. Alates sellest punktist asutakse pilti värvima. Värvitud pilt (tähtedena) väljastatakse teise faili. • Muudetakse vaid üks, all määratud piksel vastavalt soovitud värvile. • Muudetakse lisaks esimesele ka kõik temaga piki- või ristipidi kokku puutuvad algsega sama värvi pikslid soovitud värvi. • Võrreldes eelmisega värvitakse ka diagonaalis piksleid. Antakse teada, kas tekkis olukord, kui värvitud pinna sisse jäi teist värvi „saar“.? Doominokivid Failis on kirjas kasutada olevad doominokivid - igal real kirjas vastava kivi otste silmade arv. • Väljasta kõik kivid, kus vähemalt ühes otsas on kolm silma. • Väljasta eraldi need kivid, mis on täiskomplektis olemas lisaks faili kirjutatutele. • Püüa failis olevatest kividest kokku panna võimalikult pikk reeglitele vastav jada. Lainetus Signaali nivood mõõdetakse korrapäraselt ning selle väärtus talletatakse faili. Laine harjaks loetakse kohta, mille puhul on sellest väiksemad nii eelnev kui järgnev väärtus. • Väljasta laineharjade järjekorranumbrid • Leia harjade suurim ja vähim vahekaugus • Teata, millise pikkusega vahekaugusi kui palju oli ning joonista vastav tulpdiagramm. Kommentaaride eemaldamine Programmi sisendiks on programmikoodifail. • Trüki teise faili ümber vaid read, mis ei alga kahe kaldkriipsuga. • Kommentaari alguseks olevad kaks kaldkriipsu võivad olla ka rea keskel. Sel juhul trükitakse teise faili reast vaid väljakommenteerimata osa. • Kommentaaride eemaldamisel arvestatakse keele süntaksit, st. sõne sees olevad kaldkriipsud ei alusta kommentaari. Samuti töötavad /* ja */ kommentaarid. Pakkija • Tekst kirjutatakse ümber teise faili jättes tühikud välja. • Vähemalt kolmekordsed tähed asendatakse tähe ja numbri kombinatsiooniga. Näiteks eeeuuuuu tulemuseks oleks 3e5u. • Tekstis olevad sõnad nummerdatakse. Pakitud faili algul on sõnadest tabel. Seejärel tulevad vaid sõnade numbrid ja kirjavahemärgid. Kirjasõprade otsing sünniaasta järgi • Inimese kohta saab veebilehel salvestada nime, sünniaasta ning sünniaastate vahemiku, millises vanuses kirjasõpra ta otsib. Administraator näeb andmeid. • Iga inimese lehel kuvatakse sisestatutest nende inimeste andmed, kelle sünniaasta jääb soovitud vahemikku. Administraator saab sisestused kinnitada või tagasi lükata. • Lisaks kuvatakse inimesele need, kelle soovitud vahemikku vaataja ise jääb ning eraldi loeteluna nimed, kelle puhul mõlemad vahemikud sobivad. Tööaja arvestusgraafik • Tööle sisenedes ning töölt lahkudes sisestab kasutaja oma koodi. Kood, liikumissuund ning kellaaeg talletatakse (nt. tabelisse). • Lisaks eelmisele on võimalik kontrollida, et tabelis poleks järjest kaht sisenemist või väljumist. Kui andmed korras, väljastatakse inimese tööl viibitud aeg. • Inimese tööl oldud aeg väljastatakse kuude lõikes. Eraldi näidatakse puhkepäevadel tööl viibitud aeg. Iga kuu kohta leitakse aeg, kus korraga on olnud kõige rohkem inimesi kohal. Uksed Abiprogramm kaardipõhisele ustesüsteemile. • Kettal (nt. andmetabelites) on kirjas väljaantud magnetkaardid, majas paiknevad kaardiga avanevad uksed ning õigused, millise kaardi omanik millist ust avada tohib. • Sisestades kaardi numbri ja ukse numbri, vastatakse, kas vastava kaardi omanik tohib sellest uksest siseneda. • Lisaks eelmisele saab sissepääsu õigusi jagada piiratud ajaks. Vale kaardi või ukse numbri sisestamisel antakse veateade. Võrrandite lahendamine • Leia funktsiooni ax+b=0 nullkoht • Leia kahe muutujaga lineaarvõrrandisüsteemi lahend • Leia proovimise teel nullkohad mistahes funktsioonile etteantud vahemikus (selle funktsiooni võib koodi sisse kirjutada). Programmikoodi haldus * Koosta koodirepositoorium, lisa kirjeldus ja metaandmed ning paari esialgu tühja meetodiga klass loodava Trips-Traps-Trulli mängu kohta. * Kirjuta kordamööda automaatteste ning testile vastavat koodi mängu tarbeks (laua seisu küsimine, pakkumine). Iga töötava lõigu valmimisel saada saada kood repositooriumisse. * Lisa loodud klassile eraldi failis kasutajaliides, kasuta kasutajaliidese arendamiseks eraldi kohta/kataloogi. Tekita koodi muutmisel meelega konflikt (samade andmete üheaegne muutmine) ning lahenda see. Ökosüsteem * Koosta etteantud suurusega muruplats (nt 50x50 meetrit). Iga ruutmeetri kohta on kirjas, mitme sentimeetri kõrgune on rohi. Iga päevaga kasvab muru sentimeetri jagu pikemaks kuni 9 cm-ni. Ruutmeetrite kaupa saab rohtu lühemaks niita/süüa, iga ruutmeetri rohi kasvab seejärel iseseisvalt edasi. * Jänes liigub iga tunni aja tagant juhuslikule kõrvalruudule ning sööb sealse rohu sentimeetri jagu lühemaks. Näita tundide kaupa, kus on jänes ning kus ruudul on kui kõrge muru. * Koosta jänese jaoks klass, loo temast mitu eksemplari, igaüks rohuplatsil eri kohal. Trüki tundide kaupa muruplatsi seisukord ning jäneste asukoht. Katseta platsi suuruse ja jäneste arvuga, et millal tekib olukord, kus jänese jaoks pole ei tema ruutmeetril ega ühelgi kõrval asuval ruutmeetril sentimeetritki muru.