剰余演算
多くの実装においては「0への切捨て除算」が使用されている。これは商を0への切捨て関数 q = trunc(a/n) によって処理し、(1)の処理における余りは「被除数と同じ符号」となる。この場合の商は0方向に丸められる。つまり、実数での商から0の方向へ向かって直近の整数となる。
ドナルド・クヌースは「切り下げ除算」について言及した。これは商を床関数 q = ⌊ ( a / n ) ⌋ {\displaystyle q=\lfloor (a/n)\rfloor } によって処理し、(1)の処理における余りは「除数と同じ符号」となる。床関数によって、商が負の数であっても常に負の無限大方向に丸められる。 r = a − n ⌊ a n ⌋ {\displaystyle r=a-n\left\lfloor {\frac {a}{n}}\right\rfloor }
Raymond T. Bouteはユークリッド除法の手法での定義について言及している。この場合、余りは非負数(0 ≤ r)となる。右表では「常に正」と表記している。この定義は下記のように表すことができる。