除法
商是 令其與分子乘積的絕對值 不超過 分母的絕對值 且最接近的數
(-10) / 3 = -3 余 -1
10 / (-3) = -3 余 1
(-10) / (-3) = 3 余 -1
取余與取模
取余是數學中的概念,取模是計算機中的概念,兩者都是求兩數相除的余數
-
當兩數符號相同時,結果相同
7%4 與 7 Mod 4 結果都是3
-
當兩數符號不同時,結果不同
(-7)%4=-3
(-7)Mod4=1
(-7) / 4 = -1.75
取余運算,求商采用fix函數,向0方向舍入,取 -1。因此 (-7) % 4 商 -1 余數為 -3
取模運算,求商采用 floor 函數,向無窮小方向舍入,取 -2。因此 (-7) Mod 4 商 -2 余數為 1
JavaScript 算術運算符
求余 %
JS中 % 是取余運算,非取模運算
取模運算可采用如下公式
Number.prototype.mod = function(n) { return ((this % n) + n) % n; } // 或 function mod(n, m) { return ((n % m) + m) % m; }