他们是如何得出两个数字“ a%b = a-b *(a // b)”模块的方程的

时间:2019-03-24 01:10:51

标签: python-3.x

如果我们尝试其他示例,您会发现它满足方程式

calculateNextResult

问题是他们从哪里得到方程式

中的a%b = b *(a // b)-a

1 个答案:

答案 0 :(得分:0)

这是定义“余数”操作的直观方法,它实际上在python documentation中,您只需要稍微调整一下公式即可。

  

楼层划分和模运算符通过以下方式连接   同一性:x ==(x // y)* y +(x%y)。地板除法和模也   与内置函数divmod()连接:divmod(x,y)==(x // y,   x%y)。

因此,从(x//y)*y中减去x == (x//y)*y + (x%y)会得到x%y == x - (x//y)*y