用JAVA编程验证哥德巴赫猜想,即任何大于6的偶数可以表示为两素数之和,如10=3 7 (用双层循环)

2020-06-06 教育 168阅读
import java.util.*;
public class GoldbachClass { 
 //判断是不是素数
 public boolean isPrimeNum (int n) {
  int i;
 
  for (i = 2; i < n/2; i++) {   if(n%i == 0)
    break;
  }
 
  if(i >= n/2)   return true;
  return false;
 }
 
 //验证哥德巴赫猜想
 public void getGoldbachNum (int n) {
  if(n < 6  ||  n%2 == 1)
  {
   System.out.println (n + "不满足哥德巴赫猜想!");
   return;
  }
  
  for(int i=2; i<= n-1; i++)
  {
   if(this.isPrimeNum(i) && this.isPrimeNum(n - i))
   {
    System.out.println (n + "=" + i + "+" + (n-i));
    break;
   }
  }
 }
 
 public static void main (String[] args) {  GoldbachClass gc = new GoldbachClass(); //创建类对象gc
  Scanner in = new Scanner(System.in); //创建输入流对象in 
  
  System.out.print ("输入需要验证的数(n>=6):");
  int n;
  n = in.nextInt();//输入n
  
  gc.getGoldbachNum(n);//验证哥德巴赫猜想
 }
}
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com