whiledef self.years_before_desired_balance(current_balance, desired_balance)
years = 0
while current_balance < desired_balance
current_balance = annual_balance_update(current_balance)
years += 1
end
years
end
untildef self.years_before_desired_balance(current_balance, desired_balance)
years = 0
until current_balance >= desired_balance
current_balance = annual_balance_update(current_balance)
years += 1
end
years
end
loopdef self.years_before_desired_balance(current_balance, desired_balance)
years = 0
loop do
current_balance = annual_balance_update(current_balance)
years += 1
return years if current_balance >= desired_balance
end
end
Como provavelmente já reparaste, o Ruby não tem um operador de incremento (i++) como acontece com algumas outras linguagens.
Em vez disso, podes usar construções como i += 1 (que é o mesmo que i = i + 1).