我正在使用 java
和 python
中的 %
运算符进行一些计算。
在进行计算时,我发现 %
运算符在处理负数时在两种语言中的工作方式不同。
例如
-21 % 4 = -1 // Java
-21 % 4 = 3 # Python
所以我查看了 stackoverflow 上的一些帖子,发现在 java
中,%
给出了余数,而在 中python
, %
给出模。对于正数,它们是相同的,但对于负数,它们给出不同的结果,如上面的示例所示。
所以我搜索了模和余数之间的区别,在网上阅读了一些帖子,但我仍然不清楚余数和模数之间的区别
问题
有人可以用上面的例子简单地解释一下模
和余数
之间的区别吗?
最佳答案
与C、C++或Java不同,Python 的模运算符 (%) 始终返回与分母(除数)具有相同符号的数字)。
示例
(-5) % 4 = (-2 × 4 + 3) % 4 = 3.
( See 了解如何确定不同语言的结果符号。)
关于java - 模数和余数之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58186867/