haskell - resultado - Redondear al entero más cercano
redondear en excel numeros enteros (1)
Está en la especificación. Puede verlo en la sección 6.4.6 del informe Haskell :
round x
devuelve el entero más cercano ax
, el entero par six
es equidistante entre dos enteros.
Como lo señaló @dflemstr , esto está de acuerdo con el Estándar IEEE para la aritmética de punto flotante .
¿Hay alguna especificación oficial para la función round
en Haskell? En la versión 7.0.3 de GHCi veo el siguiente comportamiento:
ghci> round (0.5 :: Double)
0
ghci> round (1.5 :: Double)
2
Dado que tanto 0.5 como 1.5 se pueden representar exactamente como números de punto flotante, esperaba ver el mismo comportamiento que en Python:
>>> round(0.5)
1.0
>>> round(1.5)
2.0
¿Existe una razón para la diferencia o es un capricho de GHCi?