网 2013-11-08 05:25:59
点我顶贴
收藏
删除
#include<iostream>
#include<cstdio>
#include<string.h>
#define MAXN 10001
using namespace std;
bool flag[MAXN];
int n;
void list()//筛法求质数
{
int i,j;
memset(flag,true,sizeof(flag));
flag[1]=false;
for(i=2;i*i<=MAXN;i++){
if(flag[i]){
for(j=i*i;j<MAXN;j+=i)
flag[j]=false;
}
}
//for(i=1;i<MAXN;i++)if(flag[i])cout<<i<<endl;
}
int main()
{
int i,j;
scanf("%d",&n);
list();
for(i=4;i<=n;i+=2){
for(j=2;j<i;j++){
if(flag[j]&&flag[i-j]){
printf("%d=%d+%d\n",i,j,i-j);
break;
}
}
}
return 0;
}