Haskell程式:將int型別變數轉換為double
在Haskell中,我們將使用使用者定義函式intToDouble以及fromIntegral、realToFrac和realPart函式將int型別變數轉換為double。在第一個示例中,我們將使用(intToDouble n = fromIntegral n)函式;在第二個示例中,我們將使用(intToDouble n = realToFrac n)函式;在第三個示例中,我們將使用(intToDouble n = realPart (fromIntegral n :+ 0))函式。
演算法
步驟1 - 使用fromIntegral函式定義intToDouble函式。
步驟2 - 程式執行將從main函式開始。main()函式控制整個程式的執行。它被寫成main = do。
步驟3 - 初始化名為“n”的變數。它將儲存要轉換為相應double值的整數。
步驟4 - 呼叫intToDouble函式並將n傳遞給它。
步驟5 - 函式呼叫後,使用‘putStrLn’語句將生成的double值列印到控制檯。
示例1
在這個示例中,使用者定義函式intToDouble使用fromIntegral函式將int變數轉換為double。
intToDouble :: Int -> Double intToDouble n = fromIntegral n main :: IO () main = do let n = 42 putStrLn (show (intToDouble n))
輸出
42.0
示例2
在這個示例中,使用者定義函式intToDouble使用fromIntegral函式透過除法將int變數轉換為double。
intToDouble :: Int -> Double intToDouble n = fromIntegral n / 1.0 main :: IO () main = do let n = 42 putStrLn (show (intToDouble n))
輸出
42.0
示例3
在這個示例中,使用者定義函式intToDouble使用fromIntegral函式透過乘法將int變數轉換為double。
intToDouble :: Int -> Double intToDouble n = fromIntegral (n * 10^1) / 10.0 main :: IO () main = do let n = 42 putStrLn (show (intToDouble n))
輸出
42.0
示例4
在這個示例中,使用者定義函式intToDouble使用realToFrac函式將int變數轉換為double。
intToDouble :: Int -> Double intToDouble n = realToFrac n main :: IO () main = do let n = 42 putStrLn (show (intToDouble n))
輸出
42.0
示例5
在這個示例中,使用者定義函式intToDouble使用realPart函式將int變數轉換為double。
import Data.Complex intToDouble :: Int -> Double intToDouble n = realPart (fromIntegral n :+ 0) main :: IO () main = do let n = 42 putStrLn (show (intToDouble n))
輸出
42.0
結論
整數到double的轉換是將整數值轉換為double型別的浮點值的過程。在Haskell中,使用使用者定義的intToDouble函式以及fromIntegral、realToFrac和realPart函式可以將Int變數轉換為double。