使用库函数获取除法和余数的 Haskell 程序


在 Haskell 中,我们可以使用 divMod 和 quotRem 函数来获取给定数字的除法和余数。在第一个示例中,我们将使用 (divMod x y) 函数,在第二个示例中,我们将使用 (quotRem 20 7) 函数。

算法

  • 步骤 1 − 程序执行将从 main 函数开始。main() 函数控制整个程序。它被写成 main = do。

  • 步骤 2 − 变量“x”和“y”被初始化。内部函数将以它们作为参数进行除法运算。

  • 步骤 3 − 函数调用后,使用 'putStrLn' 语句将结果的商和余数打印到控制台。

示例 1

在这个示例中,我们将看到如何获取两个数字相除后的商和余数。这可以通过使用 divMod 函数来完成。

main :: IO ()
main = do
   let x = 10
   let y = 3
   let (quotient, remainder) = divMod x y
   putStrLn $ "Quotient: " ++ show quotient
   putStrLn $ "Remainder: " ++ show remainder

输出

Quotient: 3
Remainder: 1

示例 2

在这个示例中,我们将看到如何获取两个数字相除后的商和余数。这可以通过分别使用 div 和 Mod 函数来完成。

main :: IO ()
main = do
   let x = 10
   let y = 3
   let quotient = x `div` y
   let remainder = x `mod` y
   putStrLn $ "Quotient: " ++ show quotient
   putStrLn $ "Remainder: " ++ show remainder

输出

Quotient: 3
Remainder: 1

示例 3

在这个示例中,我们将看到如何获取两个数字相除后的商和余数。这可以通过在元组上使用 divMod 函数来完成。

import Data.Tuple

main = do
   let (q, r) = divMod 20 7
   print (q, r) 

输出

(2, 6)

示例 4

在这个示例中,我们将看到如何获取两个数字相除后的商和余数。这可以通过使用 quotRem 函数来完成。

main = do
   let (q, r) = quotRem 20 7
   print (q, r)

输出

(2,6)

示例 5

在这个示例中,我们将看到如何获取两个数字相除后的商和余数。这可以通过分别使用 quot 和 Rem 函数来完成。

main = do
   let q = 20 `quot` 7
   let r = 20 `rem` 7
   print (q, r) 

输出

(2,6)

结论

商是一个数除以另一个数的结果,它是除法的整数部分。余数是在一个数除以另一个数后剩下的量,它是除法的余数部分。在 Haskell 中,要获取两个数相除后的商和余数,我们可以一起或分别使用 divMod 或 quotRem 函数。

更新于: 2023-03-13

1K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告