レムはこれを与えます:
Prelude> rem 9 8
1
私はこのようなものが欲しかった:
Prelude> nonIntRem 9.1 8
1.0999999999999996
私は次のように実装しました:
nonIntRem x y = x - (y * (fromIntegral $ truncate (x/y)))
私の質問は次のとおりです。
- このようなものは、標準の Haskell ライブラリに既に存在しますか? 標準関数を使用したいのですが、それを見逃している可能性があります。
- そうでない場合、他の言語でこの関数のより標準的な名前はありますか? fmod かもしれませんが、この場合のネガの動作は mod ではなく、rem のようです。標準的な名前がない場合、この関数のより良い名前を考えてもらえますか?
- 正常に動作しているようですが、この機能に問題がある場合はお知らせください。