import java.util.Scanner;
/**
*
* @author LLJ
* @time 2020-5-6 上午2:48:54
* @Description 验证哥德巴赫猜想::任何一个大于6的偶数,都能分解成两个质数的和
*/
public class GedebaheCaixiang8 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int n = scanner.nextInt();
for(int i = 1;i <= n/2;i++){
int j = n - i;
if(isZhiShu2(i) && isZhiShu2(j)){
System.out.println(n+"="+i+"+"+j);
}
}
}
/**
* 判断一个数是否为质数
* @Time 2020-5-6 上午2:52:20
* @param n
* @return
*/
public static boolean isZhiShu2(int n) {
boolean falg = true;// 初始化falg为true
if (n < 3) {// 2,3为最小的质数
falg = n > 1;
}
for (int i = 2; i <= Math.sqrt(n); i++) {//Math.sqrt(n) 为n的开方,如16的开方为4
if (n % i == 0) {
falg = false;
}
}
return falg;
}
}
测试:输入一个36
打印输出为:
请输入一个整数:
36
36=5+31
36=7+29
36=13+23
36=17+19