Kurzusok
/
Clojure
Clojure
/
Feladatok
/
A kamat érdekes
A kamat érdekes

A kamat érdekes

Tanulófeladat

Bevezetés

A lebegőpontos szám olyan szám, amelyben a tizedesjel után nulla vagy több számjegy áll. Például: -2.4, 0.1, 3.14, 16.984025 és 1024.0.

A különböző lebegőpontos típusok különböző számú számjegyet tudnak tárolni a tizedesjel után; ezt a tulajdonságot nevezzük pontosságnak. Ez azt jelenti, hogy ha a PI értéket egy single típusban próbálod tárolni, csak az első 6-9 számjegyet fogja tárolni (az utolsó számjegy kerekítve lesz).

A Clojure-ben a lebegőpontos számokat Double-ként olvassuk be; M utótaggal BigDecimal-ként.

  • Double: 8 bájt (~15-17 számjegy pontosság). Ez a leggyakoribb típus. Írásmódja: 2.45.
  • BigDecimal: Tetszőleges pontosságú egész számú skálázatlan érték és egy 32 bites egész számú skála. Írásmódja: 2.45M.

Utasítások

Ebben a feladatban megtakarítási számlákkal fogsz dolgozni. A megtakarítási számlád egyenlege minden évben a kamatláb alapján frissül. A bank által adott kamatláb attól függ, mennyi pénz van a számládon (az egyenlegedtől):

  • -3.213% negatív egyenleg esetén.
  • 0.5%, ha az egyenleg kevesebb mint 1000 dollár.
  • 1.621%, ha az egyenleg legalább 1000 dollár és kevesebb mint 5000 dollár.
  • 2.475%, ha az egyenleg legalább 5000 dollár.

A kormány minden évben lehetővé teszi, hogy a megtakarítási számlád egyenlegének frissítése előtt a pénzed egy százalékát adómentesen jótékony célra adományozd. Mivel rendes ember vagy, ha az év végén pozitív az egyenleged, ennek az összegnek a kétszeresét adományozod jótékony célra, a legközelebbi egész dollárra lefelé kerekítve.

Három részfeladatod van, és mindegyik az egyenlegeddel és annak kamatlábával foglalkozik.

1. Számítsd ki a kamatlábat

Valósítsd meg az interest-rate függvényt, amely a megadott egyenleg alapján kiszámítja a kamatlábat:

(interest-rate 200.75M)
;;=> 0.5

Figyeld meg, hogy a visszaadott érték egy Double.

2. Számítsd ki az éves egyenlegfrissítést

Valósítsd meg az annual-balance-update függvényt, amely a kamatlábat figyelembe véve kiszámítja az éves egyenlegfrissítést:

(annual-balance-update 200.75M)
;;=> 201.75375M

Figyeld meg, hogy a visszaadott érték egy BigDecimal.

3. Számítsd ki, mennyi pénzt adományozz

Valósítsd meg az amount-to-donate függvényt, amely az egyenleg és a kormány által engedélyezett adómentes százalék alapján kiszámítja, mennyi pénzt adományozz jótékony célra:

(def balance 550.5M)
(def tax-free-percentage 2.5)

(amount-to-donate balance tax-free-percentage)
;;=> 27

Figyeld meg, hogy a visszaadott érték egy int.

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Clojure Exercism

Készen állsz elkezdeni a(z) A kamat érdekes feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Clojure nyelvet 12 fogalom105 feladat segítségével, valódi emberi mentorálással, mindez ingyen.