用JAVA编程验证哥德巴赫猜想,即任何大于6的偶数可以表示为两素数之和,如10=3 7 (用双层循环)
答案:1 悬赏:60 手机版
解决时间 2021-04-29 11:26
- 提问者网友:记得曾经
- 2021-04-28 12:47
用JAVA编程验证哥德巴赫猜想,即任何大于6的偶数可以表示为两素数之和,如10=3 7 (用双层循环)
最佳答案
- 五星知识达人网友:举杯邀酒敬孤独
- 2021-04-28 13:09
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);//验证哥德巴赫猜想
}
}
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);//验证哥德巴赫猜想
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯