当前位置:首页 > 题解目录 > 正文内容

哥德巴赫猜想

亿万年的星光4年前 (2021-01-28)题解目录1794

【题目描述】
哥德巴赫猜想的命题之一是:大于6 的偶数等于两个素数之和。编程将6~100所有偶数表示成两个素数之和。

【输入描述】

【输出描述】
分行输出
例如:6=3+3
8=3+5

(每个数只拆开一次,请保证第一个加数最小)
【输入样例】

【输出样例】

#include<iostream>
#include<cmath>
using namespace std;
bool judge(int x);
int main()
{
   int x;
   int i;
   for(x=6; x<=100; x+=2) //枚举6-100的偶数
       for(i=2; i<=x/2; i++) //将x分解为i与x-i两个数
           if(judge(i)&&judge(x-i))//若被分解的两个数皆为素数
           {
               cout<<x<<"="<<i<<"+"<<x-i<<endl;//输出
               break;//终止循环
           }
   return 0;
}
bool judge(int x)//判断素数
{
   int i=2;
   while( i<=floor(sqrt(x)) && (x%i!=0) )
       i++;
   if(i>floor(sqrt(x)))
       return true;
   return false;
}


扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

数列分段

题目描述对于给定的一个长度为N的正整数数列A[i],现要将其分成连续的若干段,并且每段和不超过M(可以等于M),问最少能将其分成多少段使得满足要求。输入格式第1行包含两个正整数N,M,表示了数列A[i...

【题解】Ride to Office

【题目描述】起点与终点相隔4500米。现Charley 需要从起点骑车到终点。但是,他有个习惯,沿途需要有人陪伴,即以相同的速度, 与另外一个人一起骑。而当他遇到以更快的速度骑车的人时,他会以相应的速...

分数求和

题目描述】输入n个分数并对他们求和,并用最简形式表示。所谓最简形式是指:分子分母的最大公约数为1;若最终结果的分母为1,则直接用整数表示。如: 5/6  、 10/3  均是最简形...

字符全排列(2)

【题目描述】从n个字符(n从a开始,依次递增)中选取r个字符,对r个字符进行不重复排列。字典序小的在前面。【输入描述】一行,n和r【输出描述】r个字符的所有组合,每种组合占一行,字符和字符之间用空格隔...

【题解】Crossing River

【题目描述】几个人过河,每次过两人一人回,速度由慢者决定,问过河所需最短时间。【输入描述】输入t组数据,每组数据第1行输入n,第2行输入n个数,表示每个人过河的时间。【输出描述】输出t行数据,每行1个...

【题解】车辆管理

【题目描述】交通管理局长氓氓现在需要一个管理汽车的系统,每一辆汽车都有许多信息需要去记录。 首先,每一辆汽车都有一个独一无二的车牌号 S,车牌号由 7 个字符组成。 然后,对于每一辆车要记录它的排...