A lebegőpontos szám olyan szám, amelynek a tizedeselválasztó után nulla vagy több számjegye van. Például: -2.4, 0.1, 3.14, 5., 16.984025 és 1024.0.
A lebegőpontos típusok eltérő számú számjegyet tudnak tárolni a tizedeselválasztó után. Ezt nevezzük pontosságnak.
A Go nyelvben két lebegőpontos típus van:
float32: 32 bit (körülbelül 6-9 számjegy pontosság).float64: 64 bit (körülbelül 15-17 számjegy pontosság).
Ez az alapértelmezett lebegőpontos típus.Mint látható, a két típus eltérő számú számjegyet tud tárolni.
Ez azt jelenti, hogy ha a PI-t egy float32-be próbálod eltárolni, az csak az első 6-9 számjegyet tárolja el (az utolsó számjegy kerekítve lesz).
Alapértelmezés szerint a Go a float64-et használja a lebegőpontos számokhoz, kivéve, ha a lebegőpontos szám
float32 típusú változóhoz van rendelve, vagyfloat32 visszatérési típusú függvényből tér vissza, vagyfloat32() függvény argumentumaként van átadva.A math csomag számos hasznos matematikai függvényt tartalmaz.
Ebben a feladatban megtakarítási számlákkal fogsz dolgozni. A megtakarítási számlád egyenlege minden évben a kamatlába alapján frissül. A bank által adott kamatláb attól függ, mennyi pénz van a számládon (az egyenlegeden):
0 dollárnál kisebb egyenleg esetén (az egyenleg még negatívabb lesz).0 dollárnál nagyobb vagy azzal egyenlő, és 1000 dollárnál kisebb egyenleg esetén.1000 dollárnál nagyobb vagy azzal egyenlő, és 5000 dollárnál kisebb egyenleg esetén.5000 dollárnál nagyobb vagy azzal egyenlő egyenleg esetén.Négy részfeladat vár rád, mindegyik 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.75)
// => 0.5
Vedd figyelembe, hogy a visszaadott érték float32 típusú.
Valósítsd meg az Interest() függvényt, amely a megadott egyenleg alapján kiszámítja a kamatot:
Interest(200.75)
// => 1.003750
Vedd figyelembe, hogy a visszaadott érték float64 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.75)
// => 201.75375
Vedd figyelembe, hogy a visszaadott érték float64 típusú.
Valósítsd meg a YearsBeforeDesiredBalance() függvényt, amely kiszámítja, hogy minimálisan hány év szükséges a kívánt egyenleg eléréséhez, figyelembe véve, hogy minden évben kamat adódik az egyenleghez.
Ez azt jelenti, hogy az egy év utáni egyenleg: kezdő egyenleg + a kezdő egyenleg kamata.
A második év utáni egyenleg: az egy év utáni egyenleg + az egy év utáni egyenleg kamata.
És így tovább, amíg az adott évi egyenleg nagyobb vagy egyenlő nem lesz, mint a cél-egyenleg.
balance := 200.75
targetBalance := 214.88
YearsBeforeDesiredBalance(balance, targetBalance)
// => 14
Vedd figyelembe, hogy a visszaadott érték int típusú.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Go nyelvet 34 fogalom165 feladat segítségével, valódi emberi mentorálással, mindez ingyen.