歌德巴赫猜想说:每个大于2的偶数都可以表示为两个质数之和。
的有关信息介绍如下:问题补充说明:问:168是哪两位数的质数之和,并且其中一个质数的个位数字是1?(求跪 快)
现给出以下c++施程序
#include<iostream>
#include<math.h>
usingnamespacestd;
//判断一个单创川微侵曲布志数是不是素数
boolfind(inta)
{
for(inti=2;i<=sqrt(float(a));i++)
{
if(a%i==0)
{
returnfalse;
}
}
returntrue;
}
intmain()
{
//先算出所有100以内的素数,并放入一个数组
intvec[50];
intn=0;
for(intj=2;j<=100;j++)
{
if(find(j)){
vec[n]=j;
n++;
}
}
//n为100以内素数的个数
boola;
for(int口八保独往形升值倍买假j=0;j<n;j++)
{
printf("%d\n",vec[j]);
}
intx;
for(in船时显没练屋百画散息ti=2;i<=50;i++)
{
x=2*i;
a=fals360问答e;
for(intj=0;vec[j]<=i;j++)
{
if(!find(x-vec[j]))
{
}
else
{
a=true;
printf("%d=%d+%d\n",x,vec[j],x-vec[j]);
}
}
if(a==false)
printf("哥德巴赫猜想在100内不正确\n");
}
printf("哥德巴赫猜想在100内曾正确\n");
}