Tracks
/
Ruby
Ruby
/
Übungen
/
Sparkonto
Sparkonto

Sparkonto

Lernübung

Einführung

Module

Bisher haben alle Übungen, die du gesehen hast, Klassen verwendet. Manchmal brauchen wir den Mehraufwand nicht, ein Objekt mit Zustand zu erzeugen, also verwenden wir stattdessen module.

Ein Modul ist einer Klasse sehr ähnlich (tatsächlich ist Module in der Objekthierarchie das Elternteil von Class). Der Hauptunterschied besteht darin, dass wir statt Instanzmethoden Klassenmethoden verwenden. Klassenmethoden beginnen mit self. und werden direkt auf einem Modul aufgerufen.

Zum Beispiel:

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

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

Schleifen

Es gibt mehrere Möglichkeiten, in Ruby Schleifen zu schreiben. Da wir aber im Allgemeinen eher Enumeration als Schleifen verwenden, ist die wohl am häufigsten gesehene Schleife die while-Schleife:

counter = 0

while counter < 5
  counter += 1
end

Du kannst auch ihr Gegenstück until verwenden:

counter = 0

until counter == 5
  counter += 1
end

Anleitung

In dieser Übung arbeitest du mit Sparkonten. Jedes Jahr wird der Kontostand eines Sparkontos anhand des Zinssatzes aktualisiert. Der Zinssatz, den die Bank gewährt, hängt davon ab, wie viel Geld auf dem Konto liegt (der Kontostand):

  • 0,5 % für einen nicht negativen Kontostand unter 1000 Dollar.
  • 1,621 % für einen positiven Kontostand von mindestens 1000 Dollar und weniger als 5000 Dollar.
  • 2,475 % für einen positiven Kontostand von mindestens 5000 Dollar.
  • 3,213 % für einen negativen Kontostand (ergibt negative Zinsen).

Du hast drei Aufgaben. Jede davon befasst sich mit dem Kontostand und seinem Zinssatz.

1. Berechne den Zinssatz

Implementiere die Methode SavingsAccount.interest_rate, um den Zinssatz anhand des angegebenen Kontostands zu berechnen:

SavingsAccount.interest_rate(200.75)
#=> 0.5

Beachte, dass der zurückgegebene Wert eine Instanz von Float ist.

2. Berechne die jährliche Aktualisierung des Kontostands

Implementiere die Methode SavingsAccount.annual_balance_update, um die jährliche Aktualisierung des Kontostands zu berechnen und dabei den Zinssatz zu berücksichtigen:

SavingsAccount.annual_balance_update(200.75)
#=> 201.75375

Beachte, dass der zurückgegebene Wert eine Instanz von Float ist.

3. Berechne die Jahre bis zum Erreichen des gewünschten Kontostands

Implementiere die Methode SavingsAccount.years_before_desired_balance, um die Mindestanzahl an Jahren zu berechnen, die nötig ist, um den gewünschten Kontostand zu erreichen:

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

Beachte, dass der zurückgegebene Wert eine Instanz von Integer ist.

Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab
Ruby Exercism

Bereit, mit Sparkonto zu starten?

Melde dich bei Exercism an, um Ruby mit 21 Konzepte121 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.