编程验证哥德巴赫猜想
1、什么是哥德巴赫猜想
在1742年给欧拉的信中哥德巴赫提出了下面猜想:任一大于2的整数都可写成三个质数之和。因现今数学界已经不使用“1也是素数”这个约定,原初猜想的现代陈述为:任一大于5的整数都可写成三个质数之和。欧拉在回信中也提出还有一等价版本号。即任一大于2的偶数都可写成两个质数之和。今日常见的猜想陈述为欧拉的版本号。把命题"任一充分大的偶数都能够表示成为一个素因子个数不超过a个的数与还有一个素因子不超过b个的数之和"记作"a+b"。1966年陈景润证明了"1+2"成立。即"任一充分大的偶数都能够表示成二个素数的和,或是一个素数和一个半素数的和"。
2、编程验证6~100的偶数,会是两个素数之和
package com.test.common; public class TestGede { /*推断是否素数*/ static int prime(int i) { if(i==2) return 1; else { for(int k=2;k<i;k++) { if(i%k==0)return 0; } return 1; } } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub for(int i=6;i<=100;i++) { for(int j=2;j<i-1;j++) { /*拆分两个数是否都为素数,假设都为素数,则输出,否则继续遍历*/ if(prime(j)==1 && prime(i-j)==1) System.out.println(i+"="+j+"+"+(i-j));continue; } } } }
3、输出结果