/*
p 2p - 1
2 3
3 7
5 31
7 127
13 8191
17 131071
19 524287
31 2147483647
*/
public class MeiSenPrime {
public static void main(String[] args) {
int p2;
System.out.println("p\t" + "2p - 1");
for (int i = 2; i <= 31; i++) {
if (isPrime(i)) {
p2 = (int)(Math.pow(2, i) - 1);
if (isPrime(p2))
System.out.println(i + "\t" + p2);
}
}
}
public static boolean isPrime(int n) {
for (int i = 2; i <= n / 2; i++)
if (n % i == 0)
return false;
return true;
}
}
Introduction to Java Programming编程题5.28<梅森素数>
最新推荐文章于 2022-07-12 00:26:55 发布