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 kinganumbrid.txt sisse EU kinganumbrid ja kuvab ekraanile vastavad jalalaba pikkused sentimeetrites ümardatuna täisarvuks. Valem jalalaba pikkuse arvutamiseks on: pikkus = 2/3 * (kinganumber - 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 kinganumbrid.txt sisu:
29 40.5 nelikümmend neli 28
Programmi käivitamisel ilmub ekraanile:
18 26 Vigane sisend 17
Vihje
>>> round(12.33) 12
Automaatkontroll. Programm ei küsi kasutajalt midagi, andmed loetakse alati sisse failist kinganumbrid.txt. Tekstifailis tähistab iga rida ühte kinganumbrit. Arvud võivad olla ühe komakohaga 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.
Kui oled juba hulk aega proovinud seda ülesannet iseseisvalt lahendada ja see ikka ei õnnestu, siis võib-olla saad abi murelahendajalt
. Püütud on selgitada tüüpilisemaid probleemseid kohti ja anda vihjeid.