Kurzusok
/
Ruby
Ruby
/
Feladatok
/
Megtakarítási számla
Megtakarítási számla

Megtakarítási számla

Tanulófeladat

Bevezetés

Modulok

Az eddigi feladataid mind osztályokat használtak. Néha azonban nincs szükség arra a többletterhel, amit egy állapottal rendelkező objektum létrehozása jelent, ezért inkább module-t használunk.

A modul nagyon hasonlít az osztályhoz (valójában az objektumhierarchiában a Module a Class szülője), a fő különbség pedig az, hogy példánymetódusok helyett osztálymetódusokat használunk. Az osztálymetódusok self.-fel kezdődnek, és közvetlenül a modulon hívjuk meg őket.

Például:

module Speaker
  def self.echo(something)
    "#{something} ... #{something}"
  end
end

Speaker.echo("Hello")   #=> "Hello ... Hello"

Ciklusok

Többféleképpen is írhatunk ciklust Rubyban, de mivel általában inkább felsorolást használunk, mintsem ciklusokat, a leggyakrabban látott ciklus talán a while ciklus:

counter = 0

while counter < 5
  counter += 1
end

Használhatod a testvérét, az until-t is:

counter = 0

until counter == 5
  counter += 1
end

Utasítások

Ebben a feladatban megtakarítási számlákkal fogsz dolgozni. A megtakarítási számla egyenlege minden évben a kamatláb alapján frissül. A bank által adott kamatláb a számlán lévő pénz mennyiségétől (azaz az egyenlegétől) függ:

  • 0,5% nem negatív, 1000 dollárnál kisebb egyenleg esetén.
  • 1,621% pozitív, 1000 dollárnál nagyobb vagy azzal egyenlő, de 5000 dollárnál kisebb egyenleg esetén.
  • 2,475% 5000 dollárnál nagyobb vagy azzal egyenlő pozitív egyenleg esetén.
  • 3,213% negatív egyenleg esetén (negatív kamatot eredményez).

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

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

Valósítsd meg a SavingsAccount.interest_rate metódust, amely a megadott egyenleg alapján kiszámítja a kamatlábat:

SavingsAccount.interest_rate(200.75)
#=> 0.5

Figyelj rá, hogy a visszaadott érték egy Float példány.

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

Valósítsd meg a SavingsAccount.annual_balance_update metódust, amely a kamatlábat figyelembe véve kiszámítja az éves egyenlegfrissítést:

SavingsAccount.annual_balance_update(200.75)
#=> 201.75375

Figyelj rá, hogy a visszaadott érték egy Float példány.

3. Számítsd ki, hány év kell a kívánt egyenleg eléréséhez

Valósítsd meg a SavingsAccount.years_before_desired_balance metódust, amely kiszámítja, hány évre van minimálisan szükség a kívánt egyenleg eléréséhez:

SavingsAccount.years_before_desired_balance(200.75, 214.88)
#=> 14

Figyelj rá, hogy a visszaadott érték egy Integer példány.

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

Készen állsz elkezdeni a(z) Megtakarítási számla feladatot?

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