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

来源:互联网 发布:印度进出口数据 编辑:程序博客网 时间:2024/04/30 06:31

验证哥德巴赫猜想


时间限制:1 Sec 内存限制:128 MB
提交:62 正确:15

[ 提交 ] [ 统计 ] [ 提问 ]

题目描述

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

输入描述

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

输出描述

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

输入样例

8 10

输出样例

8=3+510=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;int i;for (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 count;int n,m,i,j;while(cin>>n>>m){for (j=n;j<=m;j++){if (j%2==0){count=0;for (i=2;i<=j/2;i++){if (fun(i)==1){if (fun(j-i)==1){print(i,j);break;}}}}}}return 0;}


1 0
原创粉丝点击