负数、取模与取余

取模运算(“Module Operation”)和取余运算(“Complementation ”)两个概念有重叠的部分但又不完全一致。主要的区别在于对负整数进行除法运算时操作不同。取模主要是用于计算机术语中。取余则更多是数学概念。   ——百度百科

参考:

实数的取余运算

取模和取余的区别

总结:

‘%’ 在C/C++,Java等语言中意为 取余 ,在python 中意为 取模

取余(rem)和取模(mod)在被除数、除数同号时,结果是等同的,异号时会有区别,所以要特别注意异号的情况

取余:使商偏大原则.eg:           ps:结果符号看前

  • 5 rem 3 = 2
  • -5 rem 3 = -2
  • 5 rem -3 = 2
  • -5 rem -3 = -2

取模:使商偏小原则.eg:            ps:结果符号看后

  • 5 mod 3 = 2
  • -5 mod 3 = 1
  • 5 mod -3 = -1
  • -5 mod -3 = -2

技巧:当运算涉及负数时,取余运算结果与%前符号相同,取模运算与%后符号相同。