44 Ülesanne: Mikroinvesteerimine

Pangad pakuvad eraklientidele mikroinvesteerimise võimalust, mille idee seisneb selles, et iga kaardimakse summa ümardatakse üles täisarvuni ning vahe investeeritakse. Näiteks makstes pangakaardiga 12,34 eurot, investeeritakse 0,66 eurot ja makstes 0,40 eurot, investeeritakse 0,60 eurot. Kui kaardimakse summa on täisarv, siis ei investeerita midagi. Näiteks maksesumma 4,0 puhul investeeritakse 0 eurot.

Koostada funktsioon invest, mis

  • võtab argumendiks kaardimakse summa ujukomaarvuna,
  • tagastab selle makse pealt tehtava mikroinvesteeringu summa, ümardatuna kaks kohta peale koma.

Funktsiooni koostamisel tuleb kasuks funktsioon ceil moodulist math või jäägiga jagamine (%).

Näited funktsiooni tööst
>>> invest(12.34)
0.66
>>> invest(5)
0
>>> invest(0.44)
0.56

Kaardiga tasutud maksed on tekstifailis paigutatuna eraldi ridadele.

Koostada programm, mis

  • küsib kasutajalt failinime,
  • loeb failist kaardimaksed (ujukomaarvud),
  • väljastab ekraanile igalt kaardimakselt tehtava mikroinvesteeringu, rakendades funktsiooni invest,
    • kui mikroinvesteeringu summa on 0 eurot, siis väljastab programm teate, et Investeeringut ei tehta,
  • väljastab kõikide mikroinvesteeringute kogusumma ekraanile.
Näited programmi tööst
Faili maksed.txt sisu:
30.99
24.0
6.50
9.76
70.96
0.52
>>> %Run lahendus.py
  Sisestage failinimi: maksed.txt
  0.01
  Investeeringut ei tehta
  0.5
  0.24
  0.04
  0.48
  Investeeringute kogusumma: 1.27 eurot.
Faili maksed.txt sisu:
110.20
24.44
0.88
19.12
34.34
5
0.23
10
>>> %Run lahendus.py
  Sisesta failinimi: maksed.txt
  0.8
  0.56
  0.12
  0.88
  0.66
  Investeeringut ei tehta
  0.77
  Investeeringut ei tehta
  Investeeringute kogusumma: 3.79 eurot.

Kui olete juba hulk aega proovinud ülesannet iseseisvalt lahendada ja see ikka ei õnnestu, siis võib-olla saate abi murelahendajalt. Püütud on tüüpilisemaid probleemseid kohti selgitada ja anda vihjeid.

Litsents

Icon for the Creative Commons Attribution 4.0 International License

Programmeerimine on loodud Eno Tõnisson, Tauno Palts, Merilin Säde, Kaarel Tõnisson jt poolt Creative Commons Attribution 4.0 International License litsentsi alusel, kui pole teisiti märgitud.

Jaga seda raamatut