Un número de punto flotante es un número con cero o más dígitos detrás del separador decimal.
Algunos ejemplos son -2.4, 0.1, 3.14, 5., 16.984025 y 1024.0.
Los distintos tipos de punto flotante pueden almacenar distinta cantidad de dígitos después del separador decimal; a esto se le llama su precisión.
Go tiene dos tipos de punto flotante:
float32: 32 bits (~6-9 dígitos de precisión).float64: 64 bits (~15-17 dígitos de precisión).
Este es el tipo de punto flotante predeterminado.Como puedes ver, ambos tipos pueden almacenar una cantidad distinta de dígitos.
Esto significa que si intentas almacenar PI en un float32, solo se almacenarán los primeros 6 a 9 dígitos (con el último dígito redondeado).
De forma predeterminada, Go usará float64 para los números de punto flotante, a menos que el número de punto flotante sea:
float32, ofloat32, ofloat32().El math contiene muchas funciones matemáticas útiles.
En este ejercicio vas a trabajar con cuentas de ahorro. Cada año, el saldo de tu cuenta de ahorro se actualiza según su tasa de interés. La tasa de interés que te da tu banco depende de la cantidad de dinero que haya en tu cuenta (su saldo):
0 dólares (el saldo se vuelve más negativo).0 dólares y menor que 1000 dólares.1000 dólares y menor que 5000 dólares.5000 dólares.Tienes cuatro tareas, y cada una se ocupa de tu saldo y de su tasa de interés.
Implementa la función InterestRate() para calcular la tasa de interés según el saldo especificado:
InterestRate(200.75)
// => 0.5
Ten en cuenta que el valor que se devuelve es un float32.
Implementa la función Interest() para calcular el interés según el saldo especificado:
Interest(200.75)
// => 1.003750
Ten en cuenta que el valor que se devuelve es un float64.
Implementa la función AnnualBalanceUpdate() para calcular la actualización anual del saldo, teniendo en cuenta la tasa de interés:
AnnualBalanceUpdate(200.75)
// => 201.75375
Ten en cuenta que el valor que se devuelve es un float64.
Implementa la función YearsBeforeDesiredBalance() para calcular la cantidad mínima de años necesarios para alcanzar el saldo deseado, teniendo en cuenta que cada año se suma el interés al saldo.
Esto significa que el saldo después de un año es: saldo inicial + interés del saldo inicial.
El saldo después del segundo año es: saldo después de un año + interés del saldo después de un año.
Y así sucesivamente, hasta que el saldo del año actual sea mayor o igual que el saldo objetivo.
balance := 200.75
targetBalance := 214.88
YearsBeforeDesiredBalance(balance, targetBalance)
// => 14
Ten en cuenta que el valor que se devuelve es un int.
Regístrate en Exercism para aprender y dominar Go con 34 conceptos166 ejercicios y mentoría humana real, todo gratis.