当除数和被除数同为正时:
>> rem(10,91)
ans =
10
>> mod(10,91)
ans =
10
当除数和被除数同为负时:
>> rem(-10,-91)
ans =
-10
>> mod(-10,-91)
ans =
-10
当除数和被除数符号不同时:
>> rem(-10,91)
ans =
-10
>> mod(-10,91)
ans =
81
>> rem(9,-4)
ans =
1
>> mod(9,-4)
ans =
-3
rem和mod的相同与区别:
1,当除数和被除数同符号时,rem与mod没有区别
2,但除数与被除数符号不同时,rem的结果与除数保持一致,而mod的结果与被除数保持一质
3,无论除数与被除数的符号如何,都满足以下公式:
rem取的余值相当于整数商值向上取整得到的结果,即:
rem(9,-4) =
9-(-4)*fix(9/-4)
mod取的余值相当于整数商值向下取整得到的结果,即:
mod(9,-4) =
9-(-4)*floor(9/-4)
故,两者最大的区别在于取整数商的方式不同。
同理,取整数商可根据情况选用floor()或是fix()
>> floor(2.5)
ans =
2
>> fix(2.5)
ans =
2
>> ceil(2.5)
ans =
3
>> floor(-2.5)
ans =
-3 >> fix(-2.5)
ans =
-2
>> ceil(-2.5)
ans =
-2
floor()总是往坐标轴的负方向取整。
fix()总是往坐标原点取整
ceil()总是往坐标轴的正方向取整。