验证歌德巴赫猜想:任何一个充分大的偶数都可以表示为两个素数之和。请输入一个偶数,将其表示成两个素数之和。
#include<iostream>
#include<cmath>
using namespace std;
bool a(int);
int main()
{
int num,i,j;bool a1,a2;
cin>>num;
if(num%2==0)
{
for(i=1;i<=num;i++)
{
a1=a(i);a2=a(num-i);
if(a1&&a2) cout<<num<<"="<<i<<"+"<<(num-i)<<endl;
}
}
else cout<<"Input is not right"<<endl;
}
bool a(int k)
{
bool a3=true;int i;
for(i=2;i<=int(sqrt((double)k));i++)
if(k%i==0)
{
a3=false;
break;
}
return a3;
}