第四题:编写程序验证歌德巴赫猜想:一个大于等于6的偶数可以表示为两个素数之和。

来源:百度知道 编辑:UC知道 时间:2024/05/23 20:50:47
提示:输入一个大于等于6的数n,将其拆成两个数之和n=a+b,第1 个数a从2到n/2,第2 个数为b=n-a,判断,如果a和b都是素数则输出。

验证又不是证明。。
另外,算法应该很简单吧,c++程序如下
bool Prime(n)
{
bool p=true;
for(int i=2;i<=floor(sqrt(n));i++)
{
if(n%i==0)
{
p=false;
exit;
}
}
return p;
}
bool Goldbach(n)
{
bool goldbach=false;
for(int i=2;i<=n/2;i++)
{
if(Prime(i)&&Prime(n-i))
goldbach=true;
}
return goldbach;
}
在主函数里调用Goldbach()即可

数学上的明珠验证了吗?我记得我读高中时这难题好像都没攻克。

bool Prime(n)
{
bool p=true;
for(int i=2;i<=floor(sqrt(n));i++)
{
if(n%i==0)
p=false;
}
return p;
}

a=2
b=4