Harjutused
NB! Praktikumiülesandeid antakse alati varuga, et ka kõige kiirematel/kogenumatel lahendajatel jätkuks tegevust. Seega pole mõtet kurvastada, kui sa kõiki lahendada ei jõua. Vaata ülesanded rahulikult üle ja lahenda ära just need, mis tunduvad huvitavad ja/või parajalt jõukohased/rasked (kui just praktikumijuhendaja pole soovitanud mingit konkreetset ülesannet).
1. Pitsa hind
Kirjuta programm, mis küsib pitsa läbimõõtu sentimeetrites ja terve pitsa hinda eurodes ning arvutab pitsa ruutsentimeetri hinna ümardatult kolm kohta pärast koma. Kui pitsa ruutsentimeetri hind tuleb üle 0.2, siis programm teavitab: "Kallis pitsa!".
Näide 1 programmi tööst:
Sisesta läbimõõt: 20 Sisesta hind: 5.65 Ruutsentimeetri hind on: 0.018
Näide 2 programmi tööst:
Sisesta läbimõõt: 3 Sisesta hind: 5.65 Ruutsentimeetri hind on: 0.799 Kallis pitsa!
Abiks: Matemaatiline konstant.
π väärtusena on mugav kasutada Python’i standardteegis olevat math moodulit.
Näiteks:
# Impordime vajaliku mooduli import math # Väljastame π väärtuse print( math.pi )
2. Kumb võidab lahingu?
Ajaloolased hindavad kaitsevarustuse ja hobusega keskaegse rüütli võitlusvõimet võrdseks kolme tavalise sõjamehe omaga.
Kui lahinguväljal kohtuvad kaks vaenuväge, millest esimesse kuulub a rüütlit ja b tavalist sõjameest ning teise c rüütlit ja d tavalist sõjameest, siis kumb selle lahingu eeldatavasti võidab?
Koosta programm, mis küsib kasutajalt eraldi ridadel a rüütlite, b tavaliste sõjameeste, c rüütlite ja d tavaliste sõjameeste arvu ja väljastab erkaanile, kas võitis esimene vaenuvägi lausega "Võitis esimene vaenuvägi" või teine vaenuvägi lausega "Võitis teine vaenuvägi". Viiki jäämisel väljastada ekraanile "Lahing jäi viiki".
3. TereTore
Kirjuta programm, mis küsib kasutajalt ühte täisarvu.
- Kui täisarv jagub 2-ga, siis trükib ekraanile sõna Tere.
- Kui täisarv jagub 3-ga, siis trükib ekraanile sõna Tore.
- Kui täisarv jagub nii 2-ga kui ka 3-ga, siis trükib programm ekraanile sõna TereTore.
Muudel juhtudel trükib ekraanile sellesama arvu.
Veendu, et programm annab õige tulemuse kõigil arvudest 1-6.
PS! Proovi huvi pärast ka arvuga 0 ja teiste arvudega (sh negatiivsetega.
4. Hinded
Ülikooliainetes on levinud kaks hindamisviisi:
- eristav (täheline hinne punktisumma järgi) ja
- mitteeristav (arvestatud või mittearvestatud).
Kirjuta programm, mis palub kasutajal sisestada aine punktisumma vahemikus 0 kuni 100 ja hindamisviisi. Kui hindamine on eristav, siis väljastab programm hinde järgmise skaala järgi: ≥90 on A, ≥80 on B, ≥70 on C, ≥60 on D, ≥50 on E ja <50 on F. Kui hindamine on mitteeristav, siis vähemalt 50-se punktisumma puhul väljastab teate, et aine on arvestatud; vastasel juhul on aine mittearvestatud.
Kui punktid pole vahemikus 0-100, siis tuleks kasutajale kuvada vastav teade: "Punktid peavad olema vahemikus 0-100"
Arenda oma programmi nii kaugele, et kui kasutaja sisestab midagi sobimatut, siis programm ei jookse kokku (kasuta lauseid try-except või if-else).
Näide 1:
Sisesta punktisumma: 95 Kas hindamine on eristav või mitteeristav (e/m)? m ARVESTATUD
Näide 2:
Sisesta punktisumma: -15 Kas hindamine on eristav või mitteeristav (e/m)? e Punktisumma peab jääma vahemikku 0–100
Näide 3:
Sisesta punktisumma: 65 Kas hindamine on eristav või mitteeristav (e/m)? e D
Näide 4:
Sisesta punktisumma: 50 Kas hindamine on eristav või mitteeristav (e/m)? puudub Hindamisviis on tundmatu
Nuputa! Millise hinde su programm väljastab, kui punktisumma on 0 ja hindamisviis mitteeristav?
5. Mitmes päev aastas on?
Sisestatakse kuupäev, täpsemalt kolm arvu: päev, kuu ja aasta. Leida, mitmes päev aastas see kuupäev on. Võib eeldada, et sisestatud andmed on korrektsed ja et niisugune kuupäev on tõepoolest olemas. Liigaasta on selline, kus aastanumber jagub 4-ga, välja arvatud juhud, mil aastanumber jagub 100-ga, aga ei jagu 400-ga. Programmi abil leida, mitmes päev aastas on sinu sünnipäev.
Näited programmi tööst:
>>> %Run 'päeviaastas.py' Sisesta päev: 07 Sisesta kuu: 11 Sisesta aasta: 2023 Sisestatud kuupäev on 2023. aasta 311. päev
>>> %Run 'päeviaastas.py' Sisesta päev: 09 Sisesta kuu: 06 Sisesta aasta: 1996 Sisestatud kuupäev on 1996. aasta 161. päev
6. Müügimehe palk
Müügimehele anti valida kolme palgamaksmisskeemi vahel:
Skeem A: 750 eurot nädalas puhast palka;
Skeem B: 8.75 eurot tunnis 40 tunni eest nädalas pluss 10% komisjonitasu müügi pealt;
Skeem C: 15% müügi pealt ilma muu palgata.
Programmi sisend olgu müügimehe eeldatav nädalane müük. Programm peab arvutama ja väljastama ekraanile töötasu kõigil kolmel juhul ja valima ja väljastama ekraanile nendest võimalustest parima.
Näide:
Sisesta nädala müük: 3000 Töötasud: 750.00€, 650.00€ ja 450.00€ Kõrgeim palk on skeemil A