剰余
定義に困難は無い一方で、剰余を計算する際に負の数が関わることによる実装の問題が存在する。プログラミング言語毎に異なる解決法が適用されている。例を示す。
Pascal は mod 演算の結果が正になるよう選び、d が負や0になるのを許容していない(それゆえ a = (a div d ) × d + a mod d は必ずしも成り立たない)。
C99 は剰余が分子 a と同じ符号になるよう選ぶ。(C99より前では、C言語は他の選択肢を許容していた)
Perl と Python(新しい版のみ)は剰余が分母 d と同じ符号になるよう選ぶ。
Haskell と Scheme は2つの函数(remainder と modulo)を提供している。Ada、Common Lisp、PL/I(mod と rem)や Fortran(mod と modulo)も同様である。それぞれ前者が分子に、後者が分母に符号を合わせる。