数学问题——哥德巴赫猜想

来源:互联网 发布:画图软件下载官方网站 编辑:程序博客网 时间:2024/06/07 07:52

哥德巴赫1742年给欧拉的信中哥德巴赫提出了以下猜想:任一大于2的偶数都可写成两个质数之和。

参考代码:

package com.js.math;import java.util.Scanner;/** * 对于哥德巴赫猜想的验证<br/> * 基本思路</br> * 设n为大于等于6的一个偶数,可将其分解为n1和n2两个数,分别检查n1和n2是否为素数</br> * 若都是素数,则该数得到验证。若n1不是素数,则不需要验证n2是否为素数</br> * 检验n1=n1+2,直到n1=n/2为止 * @author js * */public class Goldbach1 {public static void main(String[] args) {int boundary = 0;int n1 = 0;int n2 = 0;System.out.println("请输入验证范围...");Scanner scanner = new Scanner(System.in);if(scanner.hasNext()){boundary = scanner.nextInt();for(int a = 6;a<=boundary;a+=2){for(n1=2;n1<a/2;n1++){n2 = a-n1;if(judge(n1)&&judge(n2)){System.out.println(a+"="+n1+"+"+n2);break;}}}}}//判断是否为素数public static boolean judge(int a){boolean flag = true;for(int i = 2;i<=Math.sqrt(a);i++){if(a%i==0){flag = false;}}return flag;}}


原创粉丝点击