A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package com.itheima;

import java.util.Scanner;

/*
* 题目:一个偶数总能表示为两个素数之和。
*/
public class Test40 {
        public static void main(String[] args) {
                //键盘随意录入一个偶数
                System.out.println("请输入一个偶数:");
                Scanner sc=new Scanner(System.in);
                int num=sc.nextInt();
                //循环找出两个素数之和等于这个偶数
                for(int i=1;i<num;i++){
                        for(int x=i+1;x<num;x++){
                                //这两个数必须是素数,且之和等于这个偶数
                                if(isSuSHu(i) && isSuSHu(x) && num==i+x){
                                        System.out.println("这个偶数可以表示成两个素数之和:");
                                        System.out.println(num+"="+i+"+"+x);
                                }
                        }
                }
        }
        public static boolean isSuSHu(int num){
                boolean flag=true;
                for(int i=2;i<num;i++){
                        if(num%i==0){
                                flag=false;
                                break;
                        }
                }
                return flag;
        }
}
这样可以把一个偶数写成两个素数之和,但我觉得还是不能证明任意偶数,大家有没有什么方法证明任意偶数,求思路

4 个回复

倒序浏览
楼主要是真能把哥德巴赫猜想证明出来,就世界闻名了
回复 使用道具 举报
虽然没看懂 还是顶一下
回复 使用道具 举报
hbcoding 发表于 2015-12-1 20:22
楼主要是真能把哥德巴赫猜想证明出来,就世界闻名了

哦哦,突然明白,我还看过一个电影,就是关于这个猜想的,哎,丢人了
回复 使用道具 举报
好吧,到今天才知道原来哥德巴赫猜想就是这个啊。。。好惭愧,并不会
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马