Finora tutti gli esercizi che hai visto hanno usato le classi.
A volte non abbiamo bisogno del sovraccarico di creare un oggetto con stato, quindi usiamo module.
Un modulo è molto simile a una classe (in effetti, Module è il genitore di Class nella gerarchia degli oggetti): la differenza principale è che invece dei metodi di istanza usiamo i metodi di classe.
I metodi di classe iniziano con self. e vengono chiamati direttamente su un modulo.
Per esempio:
module Speaker
def self.echo(something)
"#{something} ... #{something}"
end
end
Speaker.echo("Hello") #=> "Hello ... Hello"
In Ruby ci sono diversi modi per scrivere dei cicli, ma dato che in generale tendiamo a usare l'enumerazione invece dei cicli, il ciclo che si incontra più spesso è forse il ciclo while:
counter = 0
while counter < 5
counter += 1
end
Puoi anche usare il suo fratello until
counter = 0
until counter == 5
counter += 1
end
In questo esercizio lavorerai con i conti di risparmio. Ogni anno, il saldo di un conto di risparmio viene aggiornato in base al tasso di interesse. Il tasso di interesse che la banca concede dipende dalla quantità di denaro presente sul conto (il suo saldo):
1000 dollari.1000 dollari e inferiore a 5000 dollari.5000 dollari.Hai tre compiti, ognuno dei quali riguarderà il saldo e il suo tasso di interesse.
Implementa il metodo SavingsAccount.interest_rate per calcolare il tasso di interesse in base al saldo specificato:
SavingsAccount.interest_rate(200.75)
#=> 0.5
Nota che il valore restituito è un'istanza di Float.
Implementa il metodo SavingsAccount.annual_balance_update per calcolare l'aggiornamento annuale del saldo, tenendo conto del tasso di interesse:
SavingsAccount.annual_balance_update(200.75)
#=> 201.75375
Nota che il valore restituito è un'istanza di Float.
Implementa il metodo SavingsAccount.years_before_desired_balance per calcolare il numero minimo di anni necessari per raggiungere il saldo desiderato:
SavingsAccount.years_before_desired_balance(200.75, 214.88)
#=> 14
Nota che il valore restituito è un'istanza di Integer.
Iscriviti a Exercism per imparare e padroneggiare Ruby con 21 concetti121 esercizi e il mentoring di persone reali, tutto gratis.