Kierros 5, tehtävä 2

Lamppuvertailu (150 p)

Tässä tehtävässä harjoitellaan erityisesti seuraavia asioita:

Tee Eclipseen uusi projekti, jonka nimi on tehtava5_2, ja tähän projektiin moduuli lamppulaskuri. Kirjoita moduuliin ohjelma, jonka avulla käyttäjä voi verrata hehkulampun ja energiansäästölampun kustannuksia, kun otetaan huomioon sekä lampun hankintahinta että lampun sähkökustannukset.

Ohjelma kysyy käyttäjältä ensin hehkulampun ja sitten energiansäästölampun hinnan (euroa), tehon (watteja) ja lampun oletetun kestoajan (tuntia). Sitten ohjelma pyytää käyttäjältä sen ajan (tunteina), jolta lampun kustannukset lasketaan, ja sähkön hinnan (snt / kWh). Ohjelma laskee ja tulostaa sekä hehkulampun että energiansäästölampun kokonaiskustannukset käyttäjän antamalta ajalta. Katso käyttäjälle esitettävien kysymysten ja tulostusten tarkka järjestys ja muoto esimerkkiajoista,

Kirjoita kustannusten laskemista varten funktio

Kirjoita tämän jälkeen pääohjelma, joka pyytää käyttäjältä tarvittavat tiedot samassa järjestyksessä kuin esimerkkiajossa, kutsuu funktiota laske_kustannukset molemmille lampputyypeille ja tämän jälkeen tulostaa kummankin lampputyypin kokonaiskustannukset tarkasteluaikana. Käyttäjä antaa tehot ja ajat kokonaislukuina ja hinnat desimaalilukuina. Käytä tulostuksen muotoilua niin, että kustannukset tulostetaan kahden desimaalin tarkkuudella.

Huomautus: Vaikka käyttäjä antaa osan arvoista kokonaislukuina, pitää jakolaskuja tehdessä pitää huoli siitä, että joko jaettava tai jakaja on float-typpinen, jotta jakolaskun tulosta ei pyöristettäisi kokonaisluvuksi. Helpoiten tämä käy kertomalla joko jaettava tai jakaja 1.0:lla.

Tehtävän palautus ja virhetilanteiden käsittely

Testaa ohjelmasi ajamalla sitä useita kertoja eri syötteillä ennen kuin palautat ohjelmasi Gobliniin. Jos käyttäjä ei anna jommalle kummalle (tai molemmille) lampulle positiivista kestoaikaa, ohjelma tulostaa virheilmoituksen Virhe toisen tai molempien lamppujen kayttoajassa! eikä tee muuta. Mahdollinen virheilmoitus tulostetaan vasta sitten, kun kaikki lähtötiedot on luettu (katso esimerkkiajoja). Muuten voit olettaa, että käyttäjän antama syöte on järkevää ja oikeassa muodossa. Palauta Gobliniin tiedosto lamppulaskuri.py.

Esimerkkejä ohjelman suorituksesta:

[ohjelman suoritus alkaa]
Anna hehkulampun hinta (eur).
0.8
Anna hehkulampun teho (W).
60
Anna hehkulampun kestoaika (h).
1000
Anna energiansaastolampun hinta (eur).
10.0
Anna energiansaastolampun teho (W).
15
Anna energiansaastolampun kestoaika (h).
6000
Kuinka monelta tunnilta kustannukset lasketaan?
3000
Anna sahkon hinta (snt / kWh).
9.6
Hehkulampun kustannukset tarkasteluajalta ovat 19.68 euroa ja
energiansaastolampun kustannukset 9.32 euroa.
[ohjelman suoritus päättyy]

[ohjelman suoritus alkaa]
Anna hehkulampun hinta (eur).
0.60
Anna hehkulampun teho (W).
60
Anna hehkulampun kestoaika (h).
0
Anna energiansaastolampun hinta (eur).
8.5
Anna energiansaastolampun teho (W).
15
Anna energiansaastolampun kestoaika (h).
5000
Kuinka monelta tunnilta kustannukset lasketaan?
1000
Anna sahkon hinta (snt / kWh).
7.8
Virhe toisen tai molempien lamppujen kayttoajassa!
[ohjelman suoritus päättyy]

[ohjelman suoritus alkaa]
Anna hehkulampun hinta (eur).
1.0
Anna hehkulampun teho (W).
40
Anna hehkulampun kestoaika (h).
1000
Anna energiansaastolampun hinta (eur).
10.0
Anna energiansaastolampun teho (W).
11
Anna energiansaastolampun kestoaika (h).
0
Kuinka monelta tunnilta kustannukset lasketaan?
2000
Anna sahkon hinta (snt / kWh).
10.2
Virhe toisen tai molempien lamppujen kayttoajassa!
[ohjelman suoritus päättyy]

Värikoodit:
Sininen: Syöte käyttäjältä
Vihreä: Ohjelman tuloste
Punainen: Erityishuomatus: ei tulosteta