parse frominteger float convertir convert haskell floating-point int

frominteger - Haskell int para flotar y char para flotar



integral haskell (4)

Preguntas como esta se pueden responder con hoogle .

Por ejemplo, Hoogle para "Char -> Int" y la primera función en la lista lo harán ( ord , mencionado en otras respuestas, es el segundo resultado):

digitToInt :: Char -> Int

Aunque su necesidad de una función :: Char -> Float manda usar read (tercer resultado hacia abajo) o una combinación de digitToInt y una función :: Int -> Float :

digitToFloat = toEnum . digitToInt

¿Hay una función en haskell que convierta de int a float, y de char a float?

Sé que hay una función que convierte de char a int e int a char.


has probado:

intToFloat :: Int -> Float intToFloat n = fromInteger (toInteger n)

Además ver aquí


fromIntegral convertirá de Int a Float.

Para que Char flote, depende. Si desea obtener el valor ASCII de un Char (ignorando Unicode por el momento), use Data.Char.ord:

Prelude Data.Char> fromIntegral (ord ''2'') :: Float 50.0

Si quiere leer el dígito de un Char, es decir, ''2'' convierte en el valor 2 , puede hacer esto:

char2float :: Char -> Float char2float n = fromInteger (read [n]) Prelude Data.Char> char2float ''2'' 2.0

Si va a hacer mucho de esto, puede considerar el uso de una biblioteca de análisis real para obtener el control de errores.


Si lo hago bien, puede usar Read type class para estos fines. Y significa que puede convertir algunos tipos básicos a otros tipos básicos.

Conversión de Int a Float:

Prelude> 1::Float 1.0

PERO no sé lo que significa convertir de char a Float - tal vez [Char] a Float o String to Float? De todas formas:

Prelude> read("1")::Float 1.0

Mira este enlace: http://book.realworldhaskell.org/read/using-typeclasses.html