试题描述
任何大于2的偶数,都可以写成两个素数之和(俗称1+1)。
给定一个偶数,输出它的猜想式子。请使用循环来实现。
例如:2008=5+2003(如果有多个表达式,输出前一个加数最小的表达式)
输入
输入一个偶数n,且2 < n <= 10000。
输出
输出满足歌德巴赫猜想的第一个加数最小的表达式。
输入示例
2008
输出示例
2008=5+2003
数据范围
对于100%的数据,2 < n <= 10000
#include<stdio.h>
int main()
{
int n,a,b,m,i;
6<n<1000000;
scanf("%d",&n);
if(n%20)
{
for(a=2;a<n;a++)
{
for(m=2;m<a;m++)
{
if(a%m0)
{
break;
}
}
if(ma)
{
b=n-a;
for(i=2;i<b;i++)
{
if(b%i0)
{
break;
}
}
if(i==b)
{
printf("%d=%d+%d\n", n, a, b);
break;
}
}
}
}
return 0;
}