黑马程序员技术交流社区

标题: 哥德巴赫猜想 [打印本页]

作者: beiji    时间: 2015-10-24 22:35
标题: 哥德巴赫猜想
虽然写出来了,但是总感觉有点怪,求技术牛人指导
public class GerdBaHe {

        /**
         * @param args.验证歌德巴赫猜想,输入一个大于6的偶数,请输出这个偶数能被分解为哪两个质数的和
                  如 10=3+7    12=5+7   
                  质数:除了1和自身,不能被任何数整除的数
         * 思路:
         * 1.拆数
         * 2.判断
         * 步骤:
         * 1.接收数,符合要求的进行拆分;拆分完后进行调用判断方法
         * 2.写一个判断数的方法
         */
        public static void main(String[] args) {
               
                Scanner sc=new Scanner(System.in);
                System.out.println("请输入一个大于六的数");
                int num=sc.nextInt();
                chaiFen(num);
               
        }
        public static void chaiFen(int num){
                if(num<=6){
                        System.out.println("大于6的数!!!!请重输:");
                }
                if(num>6){
                          for(int a=2;a<num/2;a++) {
                                  int b=num-a;
                                 if(prime(a)&&prime(b)){
                                         System.out.println("a="+a+",  b="+b);
                                 }
                          }
                }
        }
        public static boolean prime(int x){
                for(int i=2;i<x;i++){
                        if(x%i==0){
                                return false;
                        }
                }
                return true;
               
        }

}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2