A lebegőpontos szám olyan szám, amelynek a tizedeselválasztó után nulla vagy több számjegy áll. Például: -2.4, 0.1, 3.14, 16.984025 és 1024.0.
Az F# három lebegőpontos típussal rendelkezik:
single: 4 bájt (kb. 6-9 számjegy pontosság). Írásmódja: 2.45f.float: 8 bájt (kb. 15-17 számjegy pontosság). Ez a leggyakoribb típus. Írásmódja: 2.45.decimal: 16 bájt (28-29 számjegy pontosság). Általában pénzügyi adatok kezelésekor használjuk, mivel a pontossága kevesebb kerekítési hibához vezet. Írásmódja: 2.45m.A különböző lebegőpontos típusok eltérő számú számjegyet képesek tárolni a tizedeselválasztó után, amit a típus pontosságának nevezünk. Ez azt jelenti, hogy ha a PI-t egy single típusban próbáljuk tárolni, csak az első 6-9 számjegyet tárolja el (az utolsó számjegyet kerekítve).
Ebben a feladatban takarékszámlákkal fogsz dolgozni. A takarékszámlád egyenlege minden évben a kamatláb alapján frissül. A kamatláb, amit a bankod ad, attól függ, mennyi pénz van a számládon (azaz mekkora az egyenleged):
1000 dollár.1000 dollár, de kevesebb mint 5000 dollár.5000 dollár.A kormány minden évben lehetővé teszi, hogy a pénzed egy részét adómentesen jótékony célra adományozd. Mivel rendes ember vagy, ha az egyenleged az év végén pozitív lesz, az adómentes százalékot megduplázod, és lefelé kerekíted a legközelebbi egész dollárra. Nem bánod, ha az adomány második fele után adót fizetsz.
Három feladat vár rád, amelyek mindegyike az egyenlegeddel és annak kamatlábával foglalkozik.
Valósítsd meg az interestRate függvényt, amely a megadott egyenleg alapján kiszámítja a kamatlábat:
interestRate 200.75m
// => 0.5f
Vedd figyelembe, hogy a visszaadott érték single típusú.
Valósítsd meg az interest metódust, amely a megadott egyenleg alapján kiszámítja a kamatot:
interest 200.75m
// => 1.00375m
Vedd figyelembe, hogy a visszaadott érték decimal típusú.
Valósítsd meg az annualBalanceUpdate függvényt, amely a kamatlábat figyelembe véve kiszámítja az éves egyenlegfrissítést:
annualBalanceUpdate 200.75m
// => 201.75375m
Vedd figyelembe, hogy a visszaadott érték decimal típusú.
Valósítsd meg az amountToDonate 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:
let balance = 550.5m
let taxFreePercentage = 2.5
amountToDonate balance taxFreePercentage
// => 27
Vedd figyelembe, hogy a visszaadott érték int típusú.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) F# nyelvet 18 fogalom148 feladat segítségével, valódi emberi mentorálással, mindez ingyen.