Taso ja pistearvo: | A 30 |
---|---|
Lyhyesti: | Täydennetään hieman luokan metodia. |
Mitä opitaan: | Ohjelmakoodin muokkausta Eclipsessä, lisäharjoitusta olioiden luomisessa ja metodien käytössä. |
Toteuttamisen vapaus: | Vähäinen. Tässä seurataan vaihe vaiheelta annettua ohjetta. |
Realistisuus: | Keskitasoa. Tässä käsitellyt peruskäskyt ovat toki erittäin hyödyllisiä ja niitä tarvitaan kaikissa ohjelmissa. |
Haastavuus: | Helpohko tehtävä, kunhan ohjeiden sisälukutaito on hallussa. |
Työläys: | Kevyt tehtävä. Useimmilta tämän tekeminen sujuu tunnissa. |
Tässä tehtävässä hieman muokataan annettua ohjelmaa.
Tutustutaan seuraavaksi Phone-projektiin ja täydennetään sitä hieman:
Call
- ja PhoneBill
-olioista, joilla voi kuvata
puhelinsoittojen laskutustietoja. call.py
. Tiedostossa on metodi
get_price(), joka alkaa riviltä 66. Metodista puuttuu kuitenkin toiminnot.
Kuten dokumenteista näkyy, metodin pitäisi palauttaa puhelun kokonaishinta.
Tehtävänä on lisätä metodiin puuttuva rivi, jolla tuo kokonaishinta
lasketaan ja tulos palautetaan kutsuvaan olioon. Muistakaa, että käytetyt
arvot ovat olion ilmentymämuuttujien arvoja. Kokonaishinta lasketaan kaavalla
kokonaislähtöhinta + kokonaisminuuttihinta * puhelun kesto phone_call
, jonka avulla voi
viitata Call
-olioon. Luokaa uusi puhelinsoitto-olio ja
laittakaa muuttuja viittaamaan siihen. get_price
ja
get_description
ja tulostakaa niiden
palautusarvot. PhoneBill
-luokka)
ilmentymää varten ja luokaa puhelinlasku henkilölle Hessu Hopo .
Lisätkää laskuun molemmat puhelinsoitot
add_call
-metodilla. get_total_price
ja
get_breakdown
palauttamat arvot. Hessu Hopo: - 10min, 0.7089e (0.2099e + 0.0499e/min) - 20min, 0.9079e (0.1099e + 0.0399e/min)
Palauttakaa muokkaamanne kooditiedosto call.py arvosteltavaksi Goblin-järjestelmään. Testimoduulia ei tarvitse palauttaa.