您的位置:首页 > 其它

哥德巴赫猜想。

2012-11-25 12:13 211 查看
/*
* Copyright (c) 2012, 烟台大学计算机学院
* All rights reserved.
* 作 者:  刘同宾
* 完成日期:2012 年 11 月 24 日
* 版 本 号:v1.0
* 输入描述:
* 问题描述:验证哥德巴赫猜想。一个不小于6的偶数一定等于两个素数之和。
* 程序输出:
* 问题分析:略
* 算法设计:略
*/

#include<iostream>

#include<cmath>

using namespace std;

int main()
{
void gotbaha(int);

int m;

cout<<"请输入一个不小于六的偶数:"<<endl;

cin>>m;

if(m>=6)       //控制输入数字>6
{
gotbaha(m);

}

else
cout<<"输入错误!"<<endl;

return 0;
}

//控制输出的是两素数相加。
void gotbaha(int m)
{
int prime(int);//函数声明
int a,b;

for(a=3;a<=m/2;a=a+2)
{
if(prime(a))   //调用函数
{
b=m-a;
if(prime(b))
{
cout<<m<<"="<<a<<"+"<<b<<endl;
}

}

}
}

//判断是否是素数
int prime(int n)
{
int i,k;

bool prime;

prime=true;

k=int(sqrt(n));

for(i=2;i<=k;i++)
{
if(n%i==0)
{
prime=false;

break;
}
}

if(prime)

return prime;

else

return false;

}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: