验证哥德巴赫猜想 6-200

#include<iostream>
#include<cmath>
using namespace std;
int main(){
for(int i=4;i<=100;i=i+2){//i从4循环到100,步进为2 
for(int r=2;r<=i/2;r++){//r从2循环到i/2,步进为1 
int ok=0;//标记量
int m=sqrt(i/2+0.5);
for(int x=2;x<=m;x++){//判断r是否为素数 
if(r%x==0){//r不是素数,ok=1,结束循环 
ok=1;
break;
}
}
if(ok==0){//如果ok==0,即r是素数,判断i-r是否为素数 
int n=sqrt(i-r+0.5);
for(int y=2;y<=n;y++){//若i-r不是素数,ok=1,结束循环 
if((i-r)%y==0){
ok=1;
break;
}
}
if(ok==0) cout<<i<<'='<<r<<'+'<<i-r<<endl;//如果i-r为素数,i符合哥德巴赫猜想,输出 
}
// ok=0;//无论ok的值是否改变,置为0 
}
} 
return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章