Arvutiteaduse instituut
  1. Kursused
  2. 2018/19 sügis
  3. Programmeerimine (LTAT.03.001)
EN
Logi sisse

Programmeerimine 2018/19 sügis

5. kodutöö

1. Plokkskeem

Järgmisel plokkskeemil on kujutatud mingi veebilehe registreerimisvormi algoritm. Kirjuta programm, mis realiseerib plokkskeemil kirjeldatu.

2. Põranda keskkoha värvimine

Kirjuta programm, mis küsib kasutaja käest:

  • ristkülikukujulise Pykkari maailma mõõtmed,
  • Pykkari esialgse asukoha ja
  • Pykkari esialgse suuna.

Seejärel loob programm mõõtmetele vastava maailma, paigutab Pykkari nõutud suunaga nõutud positsioonile ning käivitab käsud, mis panevad Pykkari värvima põranda keskkoha tumedaks.

Pykkari all oleva ruudu saab tumedaks värvida käsuga paint().

Täpsustused

  • Loodud maailma servaruutudes peab olema sein, ülejäänud ruudud peavad olema värvimata põrand.
  • Loodud maailma mõõtmed on alati paaritud arvud (näiteks 5×5, 3×7, 9×13) ning peavad olema vähemalt 3 (muidu oleks ainult seintest koosnev maailm).
  • Kasutaja võib Pykkari suuna ette anda ilmakaarte tähistega (n, e, s, w, N, E, S, W).
  • Kasutaja käest saadud sisendit tuleb kontrollida. Programm ei tohi kokku joosta, kui kasutaja sisestab midagi valesti (näiteks sisestab suvalise teksti seal, kus oodatakse täisarvu, või sisestab Pykkari algseks positsiooniks sellise, mis ei jää põranda piiridesse). Ebasobiva sisendi korral tuleb selle küsimist korrata niikaua, kuni sisend sobib.

Näide dialoogist kasutajaga

>>> Sisesta maailma laius: 9
>>> Sisesta maailma kõrgus: asdf
>>> Vigane sisend! Proovime uuesti...
>>> Sisesta maailma kõrgus: 7
>>> Sisesta Pykkari positsiooni x-koordinaat: 3
>>> Sisesta Pykkari positsiooni y-koordinaat: 23
>>> Liiga suur! Proovime uuesti...
>>> Sisesta Pykkari positsiooni y-koordinaat: 0
>>> Liiga väike! Proovime uuesti...
>>> Sisesta Pykkari positsiooni y-koordinaat: 2
>>> Sisesta Pykkari suund: S

Vihje. Kui jääd dünaamiliselt maailma loomisega hätta, siis kirjuta programmi sisse mingi konkreetne maailm ja proovi lahendada vähemalt värvimise osa.

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused