Les Integer peuvent contenir n'importe quel nombre, quelle que soit sa taille, dans la limite de la mémoire de ta machine, tandis que Int correspond à l'ensemble des entiers positifs et négatifs qui peuvent être représentés sur 32 ou 64 bits (garanti au moins de -2^29 à 2^29).
Float correspond à l'ensemble des nombres réels, limité par la précision de l'ordinateur.
Les opérations définies sur les nombres fonctionnent généralement sur l'un ou l'autre de ces types, mais pas sur les deux à la fois.
Les fonctions permettant de convertir entre Float et Integer incluent, entre autres, toFloat, qui convertit un Int/Integer en Float, et ceiling, qui convertit un Float en Int.
La conversion d'un type entier (Int ou Integer) vers n'importe quel autre type numérique se fait avec la fonction fromIntegral.
Le type cible est déduit automatiquement.
Par exemple :
n :: Integer
n = 6
x :: Float
x = fromIntegral n --> x = 6.0
m :: Int
m = 7
y :: Double
y = fromIntegral m --> y = 7.0
Tu fais partie d'une organisation de pompiers composée de bénévoles internationaux. En raison du caractère international de l'équipe, un temps précieux a été perdu lors des dernières interventions à convertir des températures entre Fahrenheit et Celsius pendant qu'on estimait la température à l'intérieur des bâtiments en feu. Pour gagner du temps, et sauver des vies, tu décides de créer un programme qui convertit automatiquement entre Fahrenheit et Celsius pour ton équipe internationale.
Implémente la fonction tempToC pour convertir une température Integer en Fahrenheit en son équivalent Float en Celsius, arrondi au centième le plus proche.
La température en degrés Celsius est définie par : T(°C) = (T(°F) - 32) / 1.8.
> tempToC 32
0.00
Implémente la fonction tempToF pour convertir une température Float en Celsius en son équivalent en Fahrenheit.
Pour des raisons de sécurité, arrondis le résultat à l'Integer immédiatement supérieur.
La température en degrés Fahrenheit est définie par : T(°F) = T(°C) × 1.8 + 32.
> tempToF 4
40
Inscris-toi sur Exercism pour apprendre et maîtriser Haskell avec 107 exercices, et un vrai mentorat humain, le tout gratuitement.