1
私はHaskellの中に2つの正の整数の最大公約数を計算したい:ハスケル最大公約数エラー?
myGCD :: Integer -> Integer -> Integer
myGCD a b
| b == 0 = abs a
| otherwise = myGCD b (b `mod` a)
これはかなり単純なアルゴリズムでなければなりません。しかし、私はいくつかの非常に奇妙な結果を得ていることがわかります。私はちょうど上記のロジックでエラーを見つけるように見えることはできません。最も顕著な共通因子であるa
とb
の計算に影響することは明らかです。