模运算与基本四则运算有些相似,但是除法例外。其规则如下:
-
(a + b) % p = (a % p + b % p) % p
-
(a - b) % p = (a % p - b % p) % p -
(a * b) % p = (a % p * b % p) % p
-
a ^ b % p = ((a % p)^b) % p
public class Test {
public static void main(String[] args) {
int a = 6, b = 3;
int k1 = (a - b) % 5;
int k2 = (a%5 - b%5)%5;
System.out.println("(a - b) % 5 = " + k1);
System.out.println("(a%5 - b%5) % 5 = " + k2);
for(int i=-10; i<=5; i++)
System.out.print(i + "%5=" + i%5 + " ");
}
}
output:
// (a - b) % 5 = 3
// (a%5 - b%5) % 5 = -2
// -10%5=0 -9%5=-4 -8%5=-3 -7%5=-2 -6%5=-1 -5%5=0 -4%5=-4 -3%5=-3 -2%5=-2 -1%5=-1 0%5=0 1%5=1 2%5=2 3%5=3 4%5=4 5%5=0