Haskell程序:获取给定数字的绝对值
Haskell具有negate、abs和signum等内部函数,可用于获取给定数字的绝对值。在第一个示例中,我们将使用(negate n)函数;在第二个示例中,我们将使用(abs)函数;在第三个示例中,我们将使用(signum x)函数。
算法
步骤1 − 定义绝对值函数
步骤2 − 程序执行将从main函数开始。main()函数控制整个程序。
步骤3 − 初始化名为“num”的变量。它将保存需要打印绝对值的数字。
步骤4 − 函数调用后,使用‘print’函数将结果的绝对值打印到控制台。
示例1
在这个例子中,我们将看到如何使用negate函数获取给定数字的绝对值。
magnitude :: (Ord a, Num a) => a -> a magnitude x | x < 0 = negate x | otherwise = x main :: IO () main = do let num = -5 print (magnitude num)
输出
5
示例2
在这个例子中,我们将看到如何使用abs函数获取给定数字的绝对值。
magnitude :: (Ord a, Num a) => a -> a magnitude = abs main :: IO () main = do let num = -5 print (magnitude num)
输出
5
示例3
在这个例子中,我们将看到如何使用abs函数和fromIntegral函数获取给定数字的绝对值。
magnitude :: (Integral a) => a -> a magnitude x = fromIntegral $ abs x main :: IO () main = do let num = -5 print (magnitude num)
输出
5
示例4
在这个例子中,我们将看到如何使用signum函数获取给定数字的绝对值。
magnitude :: (Num a) => a -> a magnitude x = x * (signum x) main :: IO () main = do let num = -5 print (magnitude num)
输出
5
结论
数字的绝对值始终为正数或零,与原数字的符号无关。
广告