我想用Java解決這個問題,但似乎無法弄清楚我的代碼出了什麼問題。在Java中的費馬的小定理
5^30000和6^123456之差是31的倍數嗎?
public class fermat {
public static int fermat(int x, int y, int n){
return (int)(Math.pow(x,y)%n);
}
public static void main(String[] args) {
int result1=fermat(5,30000,31);
int result2=fermat(6,123456,31);
System.out.println(result1);
System.out.println(result2);
} // main
} // class Fermat
返回0
int只有32位。 –