剰余演算
被除数の符号に剰余の結果が依存する場合、失敗を引き起こす場合がある。
例えば、ある整数が奇数であるかどうかを調べたい場合、下記のC++での例のように、2 で除算した余りが 1 であるかどうかを確かめれば良いように見える。
しかし、使用するプログラミング言語が、剰余の符号を被除数に依存させている場合、これは正しくない。なぜなら、n が負の奇数の場合、n % 2 は −1 となるので、この関数は false を返すからである。
正しい実装のひとつは、0 でないかどうかをチェックすることである。剰余が 0 であれば符号を気にする必要はない。
もちろん、どのような奇数も、剰余は 1 または −1 となるので、下記のような実装も可能である。