题目:验证:2000以内的正偶数都能够分解为两个素数之和(即验证歌德巴赫猜想对2000以内的正偶数成立)。为了验证歌德巴赫猜想对2000以内的正偶数都是成立的,要将整数分解为两部分,然后判断出分解出的两个整数是否均为素数。若是,则满足题意;否则重新进行分解和判断。
/*验证:2000以内的正偶数都能够分解为两个素数之和(即验证歌德巴赫猜想
对2000以内的正偶数成立)。为了验证歌德巴赫猜想对2000以内的正偶数都是
成立的,要将整数分解为两部分,然后判断出分解出的两个整数是否均为素数。
若是,则满足题意;否则重新进行分解和判断。
*/
#include<iostream>
using namespace std;
int is_zhi(int a);
int main(void)
{
for (int n=2;n<2000;n+=2)
{
for (int i=3;i<=n/2;i++)
{
if (is_zhi(i)&&is_zhi(n-i))
{
cout<<"偶数:"<<n<<"可由"<<i<<"和"<<(n-i)<<"两个素数组成。"<<endl;
break;
}
}
}
return 0;
}
int is_zhi(int a)
{
for (int j=2;j<=a/2;++j)
{
if (a%j==0)
{
return 0;
}
if (j==a/2)
{
return 1;
}
}
}