为什么Ruby中的-7 mod 3 = 2?

noi*_*rcc 2 ruby math

我从Java到Ruby,这个-7 mod 3 = 2让我感到困惑

Amb*_*ber 8

因为-7减2是3的倍数.

更具体地,在这种情况下使用的模量的实现恰好选择正模数.某些实现选择与第一个操作数具有相同符号的模数,其他实现选择正数等.

  • 您可以在Ruby中使用`remainder()`来获得与Java相同的结果.请参阅http://en.wikipedia.org/wiki/Modulo_operation以获取列出不同语言的实施选择的表格. (2认同)