您的位置:首页 > 编程语言 > C语言/C++

c/c++编程题 之 验证哥德巴赫猜想

2016-12-10 20:34 1181 查看

验证哥德巴赫猜想

题目描述

哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。输入两个整数m,n(6小于等于m,m小于等于n,n小于等100),将m,n之间的偶数表示成两个素数之和

输入描述

输入两个大于6的正整数分别给m和n。

输出描述

输出m和n之间所有偶数表示成的两个素数之和。

输入样例

8 10

输出样例

8=3+5
10=3+7
AC代码如下:
#include "iostream"#include "cstdio"#include "algorithm"#include "cstring"#include "cstdlib"#include "cmath"using namespace std;int fun(int n){int flag=1;for (int i=2;i<=sqrt(n);i++){if (n%i==0){flag=0;break;}}if(flag==1) return 1;else return 0;}void print(int n,int sum){printf("%d=%d+%d\n",sum,n,sum-n);}int main(int argc, char* argv[]){int n,m,i,j;while(cin>>n>>m){for (j=n;j<=m;j++){if (j%2==0){for (i=2;i<=j/2;i++){if (fun(i) && fun(j-i)){print(i,j);break;}}}}}return 0;}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: