📄 goldbach.java
字号:
import java.io.*;
public class Goldbach
{
public static int prime(int p) //判断数p是否为质数,是则返回1,不是则返回0
{
int p1=(int)p/2;
int r=1;
for(int i=2;i<p1+1;i++)
if(p%i==0)
r=0;
return r;
}
public static void main(String[] args) throws IOException
{
InputStreamReader reader=new InputStreamReader(System.in);
BufferedReader input= new BufferedReader(reader);
System.out.print("输入一个偶数(大于6)或一个奇数(大于5):");
String text=input.readLine();
int number=new Integer(text).intValue();
if(number%2==0) //当输入的数为大于6的偶数时,则把偶数分成2个质数相加的形式
{
for(int i=2;i<=(int)number/2;i++)
if(prime(i)==1)
{
int c=number-i;
if(prime(c)==1)
{
System.out.println(number+"="+i+"+"+c);
break;
}
}
}
else ////当输入的数为大于5的基数时,则把偶数分成3个质数相加的形式
{
int mark=0;
for(int i=2;i<=(int)number/2;i++)
if(prime(i)==1)
{
int c=number-i;
for(int j=2;j<=(int)c/2;j++)
if(prime(j)==1)
{
int c2=c-j;
if(prime(c2)==1)
{
System.out.println(number+"="+i+"+"+j+"+"+c2);
mark=1;
break;
}
}
if(mark==1)
break;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -