haskell - Redondear el número al número especificado de dígitos
numerical (3)
Depende de lo que vaya a hacer con el número redondeado.
Si desea utilizarlo en los cálculos, debe usar Data.Decimal
from Decimal
library.
Si solo desea dar formato al número Text.Printf
, debe usar Text.Printf
de la biblioteca estándar (paquete base
).
¿Existe una función simple para redondear un Double
o Float
a un número específico de dígitos? He buscado aquí y en Hoogle (para (Fractional a) => Int -> a -> a
), pero no he encontrado nada.
No estoy seguro de si existe alguna función estándar, pero puedes hacerlo de esta manera:
(fromInteger $ round $ f * (10^n)) / (10.0^^n)
λ: ((/100) $ fromIntegral $ round (0.006 * 100)) == 0.006
λ: False
λ: ((/100) $ fromIntegral $ round (0.06 * 100)) == 0.06
λ: True