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

3. kodutöö

1. Maksuvaba tulu

Maksuvaba tulu määr sõltub aastatulust:

  • aastatuluga kuni 6000 eurot on maksuvaba tulu võrdne aastatuluga
  • aastatuluga 6000 kuni 14 400 eurot on maksuvaba tulu 6000 eurot aastas
  • aastatuluga 14 400 kuni 25 200 eurot arvutatakse maksuvaba tulu vastavalt valemile 6000 – 6000 ÷ 10 800 × (aastatulu – 14 400)
  • aastatuluga üle 25 200 euro on maksuvaba tulu 0 eurot.

Kirjuta programm, mis küsib kasutaja aastatulu (mittenegatiivne ujukomaarv) ja arvutab ning väljastab ekraanile maksuvaba tulu ümardatuna kahe kohani pärast koma.

Näide

 Sisesta aastatulu: 16825
 Maksuvaba tulu on 4652.78 eurot.

Vihje

>>> round(16.6333, 2)
16.63

Automaatkontrolli võimaldamiseks lepime kokku, et arvutuste vahetulemusi ei ümardata. Ümardatakse ainult lõppvastust.

2. Pykkar igas maailma nurgas

Kirjuta Pykkari programm, mis suvalise ristkülikukujulise maailma puhul värvib ära maailma iga nurga. Programm peab töötama olenemata roboti algpositsioonist ja vaatesuunast. Võib eeldada, et maailm on seest tühi (s.t pykkar asub ristkülikukujulises seest tühjas seintega piiratud maailmas).

Näide töötavast robotist:

Automaatkontroll sellel ülesandel puudub, aga Moodle'isse tuleks lahendus esitada ikka.

3. Ruudud

Esimese kümne naturaalarvu ruutude summa on

12 + 22 + ... + 102 = 385

Esimese kümne naturaalarvu summa ruut on

(1 + 2 + ... + 10)2 = 552 = 3025

Seega esimese kümne naturaalarvu summa ruudu ja ruutude summa erinevus on 3025 - 385 = 2640.

Kirjuta programm, mis leiab esimese n naturaalarvu summa ruudu ja ruutude summa erinevuse.

Automaatkontroll. Programm peab kasutaja käest küsima naturaalarvu n ja kuvama ekraanile õige vastuse.

4. Erindite püüdmine failist lugemisel

Kirjuta programm, mis loeb tekstifailist pikkused.txt sisse jalalaba pikkused sentimeetrites ja kuvab ekraanile EU kinganumbrid ümardatuna täisarvuks. Valem kinganumbri arvutamiseks on: kinganumber = 3/2 * pikkus + 2.

Faili nende ridade juures, kus arvuks teisendamine miskipärast ebaõnnestub, tuleb ekraanile kuvada „Vigane sisend” ning jätkata faili järgmise reaga.

Näide

Faili pikkused.txt sisu:

 29
 25
 kakskümmend seitse
 28

Programmi käivitamisel ilmub ekraanile:

 46
 40
 Vigane sisend
 44

Vihje

>>> round(47.33)
47

Automaatkontroll. Programm ei küsi kasutajalt midagi, andmed loetakse alati sisse failist pikkused.txt. Tekstifailis tähistab iga rida ühte pikkust. Arvud võivad olla murdarvud, sel juhul on kümnenderaldajana kasutatud punkti (kuna seda on Pythonis lihtsam ujukomaarvuks teisendada). Mõnedel ridadel võib olla mingi jama. Väljundis peab iga kinganumber (või tekst „Vigane sisend”) olema eraldi real.

  • 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.
Tartu Ülikooli arvutiteaduse instituudi kursuste läbiviimist toetavad järgmised programmid:
euroopa sotsiaalfondi logo