Az Integer bármekkora számot tárolhat, egészen a géped memóriájának határáig, az Int pedig a 32 vagy 64 biten ábrázolható pozitív és negatív egészek halmazának felel meg (garantáltan legalább a -2^29 és 2^29 közötti tartomány).
A Float a valós számok halmazának felel meg, amelyet a számítógép pontossága korlátoz.
A számokon értelmezett műveletek általában az egyik vagy a másik típuson működnek, de nem mindkettőn.
A Float és az Integer közötti átalakítást végző függvények közé tartozik többek között a toFloat, amely Int/Integer értéket alakít Float-tá, és a ceiling, amely egy Float-ot alakít Int-té.
Az egész típusról (Int vagy Integer) bármely más numerikus típusra való átalakítás a fromIntegral függvénnyel történik.
A cél típusát automatikusan kikövetkezteti.
Például:
n :: Integer
n = 6
x :: Float
x = fromIntegral n --> x = 6.0
m :: Int
m = 7
y :: Double
y = fromIntegral m --> y = 7.0
Egy nemzetközi önkéntesekből álló tűzoltószervezet tagja vagy. Mivel a csapat nemzetközi, az utóbbi néhány riasztásnál értékes idő ment el azzal, hogy Fahrenheit és Celsius között kellett váltani, miközben az égő épületek belső hőmérsékletét becsültétek. Hogy időt, és embereket, spóroljatok, úgy döntesz, írsz egy programot, amely automatikusan vált Fahrenheit és Celsius között a nemzetközi csapatotok számára.
Valósítsd meg a tempToC függvényt, amely egy Fahrenheitben megadott Integer hőmérsékletet a neki megfelelő, századra kerekített Float értékké alakít Celsiusban.
A Celsius-fokban mért hőmérsékletet a következőképpen definiáljuk: T(°C) = (T(°F) - 32) / 1.8.
> tempToC 32
0.00
Valósítsd meg a tempToF függvényt, amely egy Celsiusban megadott Float hőmérsékletet a neki megfelelő Fahrenheit-értékké alakít.
Biztonsági okokból az eredményt felfelé kell kerekíteni, a következő legnagyobb Integer értékre.
A Fahrenheit-fokban mért hőmérsékletet a következőképpen definiáljuk: T(°F) = T(°C) × 1.8 + 32.
> tempToF 4
40
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Haskell nyelvet 107 feladat segítségével, valódi emberi mentorálással, mindez ingyen.