问题描述:
众所周知,哥德巴赫猜想的证明是一个世界性的数学难题,至今未能完全解决。我国著名数学家陈景润为哥德巴赫猜想的证明做出过杰出的贡献。
所谓哥德巴赫猜想是说任何一个大于2的偶数都能表示为两个素数之和。
编写程序,验证指定范围内哥德巴赫猜想的正确性,也就是近似证明哥德巴赫猜想。
public class Main {
public static void main(String[]Args){
if(isCx(1000)){
System.out.println("猜想正确");
}
}
public static boolean isPrimeNum(int a){ //判断是否是素数
for(int i=2 ; i<=Math.sqrt(a); i++){
if(a%i==0){
return false;
}
}
return true;
}
public static boolean isCx(int num){ //判断n范围内猜想是否正确
for(int i=4 ; i<=num ; i+=2){ //遍历4~num范围是偶数
for(int j=1 ; j<=i/2 ; j++){
if(isPrimeNum(j)&&isPrimeNum(i-j)){ //判断4~num范围的数是否能为两个素数的和
return true;
}
}
}
return false;
}
}