使用库函数检查给定数字是否为奇数的Haskell程序


在 Haskell 中,我们有像 `mod` 和 `rem` 这样的库函数,可以使用它们来检查给定数字是否为奇数。在第一个示例中,我们将使用 `isOdd n = n `mod` 2 /= 0` 函数,在第二个示例中,我们将使用 `isOdd n = (n `rem` 2) == 1` 函数。

算法

  • 步骤 1 − 使用 `mod` 函数定义 `isOdd` 函数,如下所示:`isOdd n = n `mod` 2 /= 0`。

  • 步骤 2 − 程序执行将从 `main` 函数开始。`main()` 函数控制整个程序。它写成 `main = do`。它调用 `isOdd` 函数并传入要检查的值,以查看它是否为奇数,并将结果打印到控制台。

  • 步骤 3 − 初始化名为“num”的变量。它将保存要检查的值,以查看该值是否为奇数。

  • 步骤 4 − 在检查整数后,使用 `putStrLn` 语句将结果打印到控制台。

示例 1

在这个示例中,我们将了解如何检查给定数字是否为奇数。这可以通过使用 `mod` 函数来实现。

isOdd :: Integral a => a -> Bool
isOdd n = n `mod` 2 /= 0

main :: IO ()
main = do
   let num = 7
   print (isOdd num)

输出

True

示例 2

在这个示例中,我们将了解如何检查给定数字是否为奇数。这可以通过使用 `mod` 函数来实现。在 Haskell 中,我们可以使用 `mod` 函数通过检查数字除以 2 的余数是否等于 1 来检查它是否为奇数。

isOdd :: Integral a => a -> Bool
isOdd n = n `mod` 2 == 1

main :: IO ()
main = do
   let num = 7
   print (isOdd num)

输出

True

示例 3

在这个示例中,我们将了解如何检查给定数字是否为奇数。这可以通过使用 `rem` 函数来实现。

import Data.Bits

isOdd :: Integral a => a -> Bool
isOdd n = (n `rem` 2) == 1

main :: IO ()
main = do
   let num = 7
   print (isOdd num)

输出

True

示例 4

在这个示例中,我们将了解如何检查给定数字是否为奇数。这可以通过使用 `rem` 函数来实现。该函数使用 `mod` 函数通过检查数字除以 2 的余数是否不等于 0 来检查给定数字是否为奇数。

isOdd :: Integral a => a -> Bool
isOdd n = n `mod` 2 /= 0

main :: IO ()
main = do
   let num = 7
   print (isOdd num)

输出

True

结论

奇数是指不能被 2 整除的数。奇偶性是指一个数是奇数还是偶数的性质。在 Haskell 中,可以使用模运算符(`mod`)来检查一个数是奇数还是偶数。模运算符返回第一个操作数除以第二个操作数的余数。如果余数为 0,则该数为偶数,否则为奇数。此外,我们还可以使用 `rem` 函数在 Haskell 中检查给定数字是否为奇数。

更新于: 2023年3月13日

2K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告