📜  如何在Python中对负值进行取模?

📅  最后修改于: 2022-05-13 01:55:24.716000             🧑  作者: Mango

如何在Python中对负值进行取模?

取负数的是在Python程序后面完成的更复杂的数学。如果我们不了解负数模背后的数学原理,它将成为一个巨大的搅拌器。

负模背后的数学:

让我们考虑一个例子,我们想要找到 -5mod4 即 -5%4。你们一定想知道答案将根据以下规则 -

-5/4 = 1.25 
and
math.floor(-1.25) = -2

但这不是我们得到的答案,当我们运行上面的代码时,我们会得到答案为 3。这是因为Python 的模运算符( % ) 总是返回一个与分母具有相同符号的数字。幕后发生的事情是Python应用了模运算符的分布法则,即——

(a+b)mod n = [(a mod n)+(b mod n)]mod n

要应用此数学Python ,请将给定语句分解为 -

-5%4 = (-2*4 + 3) % 4 = 3

这样做是为了使 (-2*4)%4 给出的答案为 0(因为我们总是将除数的倍数作为我们的第一个数字)并且总体结果将为 3。让我们看更多示例以便更好地理解.

例子:

示例 #1:
在这个例子中,我们可以看到,通过使用这个数学,我们能够执行和理解负模。

Python3
# Using negative modulo
res1 = -5 % 4
res2 = ((-2*4) + 3) % 4
 
print(res1)
print(res2)


Python3
# Using negative modulo
res1 = -3 % 7
res2 = - 12 % 4
 
print(res1)
print(res2)


输出 :

3
3

示例 #2:

Python3

# Using negative modulo
res1 = -3 % 7
res2 = - 12 % 4
 
print(res1)
print(res2)

输出 :

4
0