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

哥德巴赫猜想

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

【题目描述】
哥德巴赫猜想的命题之一是:大于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;
}


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

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

    分享给朋友:

    相关文章

    【题解】背包问题3

    【题目描述】完全背包定义有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的体积是c,价值是w。求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。本题要求是背...

    分数求和

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

    【题解】最低通行费

    【题目描述】一个商人穿过一个N×N的正方形的网格,去参加一个非常重要的商务活动。他要从网格的左上角进,右下角出。每穿越中间1个小方格,都要花费1个单位时间。商人必须在(2N-1)个单位时间穿越出去。而...

    【题解】跳格子2

    【题目描述】地面上有一排长度为n的格子1-n,每个格子上都有一个数xi,开始时你在位置0,每次你可以向前跳1-2格,然后取走格子上的数,直到跳到位置n+1。取走的数的和就是你的得分,现在你想知道你可能...

    八皇后问题

    八皇后问题

    【题目描述】八皇后问题是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世纪著名的数学家高斯1850年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行...

    【题解】 二维数组转置

    说明输入一个n行m列的数组,输出他的转置,具体来说输出的第i行第j个数字,应是输入的第j行第i个数字。1≤n≤20000;1≤m≤20000;1≤n∗m≤20000;1≤a[i][j]≤1000特别注...