Hasta ahora, todos los ejercicios que has visto han usado clases.
A veces no necesitamos la sobrecarga de crear un objeto con estado, así que en su lugar usamos module.
Un módulo es muy similar a una clase (de hecho, Module es el padre de Class en la jerarquía de objetos). La principal diferencia es que, en lugar de usar métodos de instancia, usamos métodos de clase.
Los métodos de clase empiezan con self. y se llaman directamente en un módulo.
Por ejemplo:
module Speaker
def self.echo(something)
"#{something} ... #{something}"
end
end
Speaker.echo("Hello") #=> "Hello ... Hello"
Hay varias formas de escribir bucles en Ruby, pero como en general tendemos a usar enumeración en lugar de bucles, el bucle que quizá veas con más frecuencia es el bucle while:
counter = 0
while counter < 5
counter += 1
end
También puedes usar su hermano until:
counter = 0
until counter == 5
counter += 1
end
En este ejercicio vas a trabajar con cuentas de ahorro. Cada año, el saldo de una cuenta de ahorro se actualiza según la tasa de interés. La tasa de interés que da el banco depende de la cantidad de dinero que hay en la cuenta (su saldo):
1000 dólares.1000 dólares y menor que 5000 dólares.5000 dólares.Tienes tres tareas, y cada una trata sobre el saldo y su tasa de interés.
Implementa el método SavingsAccount.interest_rate para calcular la tasa de interés según el saldo indicado:
SavingsAccount.interest_rate(200.75)
#=> 0.5
Ten en cuenta que el valor devuelto es una instancia de Float.
Implementa el método SavingsAccount.annual_balance_update para calcular la actualización anual del saldo, teniendo en cuenta la tasa de interés:
SavingsAccount.annual_balance_update(200.75)
#=> 201.75375
Ten en cuenta que el valor devuelto es una instancia de Float.
Implementa el método SavingsAccount.years_before_desired_balance para calcular la cantidad mínima de años necesarios para alcanzar el saldo deseado:
SavingsAccount.years_before_desired_balance(200.75, 214.88)
#=> 14
Ten en cuenta que el valor devuelto es una instancia de Integer.
Regístrate en Exercism para aprender y dominar Ruby con 21 conceptos121 ejercicios y mentoría humana real, todo gratis.