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

Programmeerimine 2019/20 sügis

  • Pealeht
  • Videojuhised
  • Viiteid

13. kodutöö

1. Kasutatud auto hind rekursiivselt

Arvestame, et auto kaotab igal aastal väärtust 20% võrreldes eelmise aastaga. Kirjuta rekursiivne funktsioon (ehk funktsioon, mis kutsub välja iseennast), mis võtab sisse auto hinna ja aastate arvu ning tagastab, kui palju on auto väärt antud arvu aastate pärast. Funktsioon peab ümardama kõik tagastatavad hinnad kahe komakohani.

>>> auto_hind(10000.0, 0)
10000.0
>>> auto_hind(10000.0, 5)
3276.8
>>> auto_hind(10000.0, 1)
8000.0
>>> auto_hind(8000.0, 5)   # või auto_hind(10000.0, 6)
2621.44

Seda ülesannet saab lahendada ka while-tsükliga või valemiga, aga lahendamine rekursiivse funktsiooniga aitab hästi mõista rekursiooni mõtet.

2. Sarnaste ruutude fraktal

Kirjuta rekursiivne funktsioon, mis joonistab kilpkonnaga fraktali ruudust, mille kolmes nurgas on sarnased ruudud ning nende kolmes nurgas on ka sarnased ruudud ja nii edasi vastavalt funktsioonile etteantud sügavusele.

Joonisel on fraktalid, mis tekivad sügavuste 1, 2, 3 ja 4 puhul.

Automaatkontroll on olemas, aga ei kontrolli väljundpildi korrektsust.

  • 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