我正在使用Python进行取模运算,我知道它会返回余数。
但如果第一个数字比第二个小怎么办?
例如
2 % 5 的答案是 2。
这是如何运作的呢?
2/5 = .4
我正在使用Python进行取模运算,我知道它会返回余数。
但如果第一个数字比第二个小怎么办?
例如
2 % 5 的答案是 2。
这是如何运作的呢?
2/5 = .4
当a << b时,a % b = a。
0 < a < b
... 如果 a
是负数,那就麻烦了。 - Matthew Scharley余数中的分子是你的模除答案,无论分子比分母大还是小。
12 % 5 = 2 , because 12 / 5 = 2 and **2**/5
9 % 2 = 1 , because 9 / 2 = 4 and **1**/2
5 % 89 = 5 , because 5 / 89 = 0 and **5**/89
5 % 365 = 5 , because 5 / 365 = 0 and **5**/365
5 % 6 = 5 , because 5 / 6 = 0 and **5**/6
没有一个数可以乘以5
使你更接近2
。
换句话说,x
必须为0
才能满足方程:5*x + r = 2
。
针对您的问题:
Q = (2/5) = 0.4,因此 Q = 0。
将其代入'A = BQ + R'中:
2 = 5 * 0 + R
因此,R = 2。
希望这可以帮到你。正如我所说,你可以在Khan Academy上了解更多信息。这是链接: https://www.khanacademy.org/computing/computer-science/cryptography/modarithmetic/a/what-is-modular-arithmetic
例子:a % n
[^ 实际上,这部分取决于编程语言本身,对于第一个例子可以是2或-5(忽略负号),或者对于第二个例子可以是-5或4]
@aldennis
模数运算通过给出除法后的余数来工作,它有一个有用的应用是
-判断一个数字是否为偶数
代码示例:
// 4 % 2 means "2 divided by 2 is what, and what is the remainder? if I have a remainder, return it or else return 0"
if(4 % 2 == 0) {
alert("2 is even");
} else {
alert("2 is odd");
}
所以如果 4%2 的余数为0,它就是偶数,否则它就是奇数。
12 % 5 = 2
的原因是5 x 2 = 10
,而12 - 10 = 2
。 - spencer.sm2 % 5 = 2
的原因是5 x 0 = 0
, 而2 - 0 = 2
. - spencer.sm