使用模数运算符是所有程序员必须知道的。我知道=)。
在java中我们有:
int a = 100 , b = 50, c;
如果我们这样做:
c = a % b; // c = 0 because : 100 = 50*2 + 0 | D = d*q + r using simple maths
然而,由于没有找到此操作的原因,我感到有点沮丧:
c = b % a; // c = 50 ???? It seems not to have logic when a use D = d*q + r
有人可以解释为什么50%100是50 ???我无法理解。
由于
答案 0 :(得分:8)
因为你可以乘以0:
c = 100*0 + 50;
以模数形式返回的+ 50
。
答案 1 :(得分:3)
这样想:
100 goes into 50 how many times?
零次。所以必须留下50
。因此答案是50
。