标签:++ 质数 style 题意 情况 next rgs static 大于
题意:输入一个偶数 N(N<=10000),验证4~N所有偶数是否符合哥德巴赫猜想:
任一大于 2 的偶数都可写成两个质数之和。如果一个数不止一种分法,
则输出第一个加数相比其他分法最小的方案。例如 10,10=3+7=5+5,则 10=5+5 是错误答案
输入样例
10
输出样例
4=2+2
6=3+3
8=3+5
10=3+7
import java.util.*; public class Main { public static void num(int x)//判断输出 { for(int i=2;i<=x;i++)//穷举加数 { if(isprime(i)==0 && isprime(x-i)==0)//判断两个数是不是质数 { //输出第一个加数最小的情况 发现成立的时候就跳出,返回 System.out.println(x+"="+i+"+"+(x-i)); return; } } } public static int isprime(int x)//判断是不是质数 { for(int i=2;i<Math.sqrt(x);i++) { if(x%i==0) return 1; } return 0; } public static void main(String[] args) { // TODO 自动生成的方法存根 Scanner in=new Scanner(System.in); int n=in.nextInt(); for(int i=4;i<=n;i+=2)//穷举4~n之间的值就可以 num(i);//调用方法 } }
标签:++ 质数 style 题意 情况 next rgs static 大于
原文地址:https://www.cnblogs.com/coke-/p/12810925.html