证明哥德巴赫猜想
代码如下
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int gede(int s);
int a;
cout<<"请输入一个大于6的偶数:"<<endl;
cin>>a;
gede(a);
return 0;
}
int gede(int s)
{
int prime(int x);
int i,j;
for(i=2;i<s;i++)
{
for(j=2;j<s;j++)
{
if(prime(i)&&prime(j))
if(s==i+j&&i<9)
cout<<s<<"="<<i<<"+"<<j<<endl;
}
}
}
int prime(int x) //判断是否为素数
{
int i,k=sqrt(x);
for(i=2;i<=k;i++)
if(x%i==0)break;
if(i>k)
return 1;
else
return 0;
}
在求判断是否为素数的函数中 为什么要判断i>k,i应该不可能大于k吧?
而且如果去掉这段代码,一样可以正常运行
if(i>k)
return 1;
else
return 0;
还有就是这个判断素数的方法原理是什么?