哥德巴赫猜想
现代陈述为:任一大于5的整数都可写成三个质数之和。
(n>5:当n为偶数,n=2+(n-2),n-2也是偶数,可以分解为两个质数的和;当n为奇数,n=3+(n-3),n-3也是偶数,可以分解为两个质数的和)欧拉在回信中也提出另一等价版本,即任一大于2的偶数都可写成两个质数之和。
今日常见的猜想陈述为欧拉的版本,即任一大于2的偶数都可写成两个素数之和,亦称为“强哥德巴赫猜想”或“关于偶数的哥德巴赫猜想”。
——————摘自百度百科
实验内容
对一给定的大于5的数,将其拆分成三个质数的和。
计算语言的实现思想
①通过强哥德巴赫猜想,先确定所给的数的奇偶性
②若是偶数则减2,若是奇数则减3,得到一个新的偶数
③将新的偶数拆分成两个质数的和
④依据所给数的奇偶性,来输出不同的结果
局限性
暂未实现输出所有可能性,例如所给数为9的情况下
输出结果为:
而9=2+2+5也满足条件,却并未输出
Java源代码
public class Goldbach { public static void main(String[] args) { int gb=1000; if(gb<6) { System.out.println("所求数应大于5!"); } int euler; int m; int n=0; int a=0; //强哥德巴赫猜想 if(gb%2==0) { euler=gb-2; } else { euler=gb-3; } //构建数组存放比euler小的质数 //先确定所要构建的数组大小 for(int i=2;i运行结果
初学者用于记录,欢迎各位前辈和大佬给出意见
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)