1. ホーム
  2. haskell

[解決済み] Haskell における `mod` と `rem` の違い

2022-04-27 07:59:30

質問

とは、具体的にどのような違いがあるのでしょうか。 modrem をHaskellで使うのですか?

どちらも同じ結果になるようです

*Main> mod 2 3
2
*Main> rem 2 3
2
*Main> mod 10 5
0
*Main> rem 10 5
0
*Main> mod 1 0
*** Exception: divide by zero
*Main> rem 1 0
*** Exception: divide by zero
*Main> mod 1 (-1)
0
*Main> rem 1 (-1)
0

解決方法は?

第2引数が負の場合は同じにならない。

2 `mod` (-3)  ==  -1
2 `rem` (-3)  ==  2