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

哥德巴赫猜想

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

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


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

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

    分享给朋友:

    相关文章

    【题解】背包问题2

    【题目描述】设有 n 中物品,每种物品有一个重量及一个价值。但每种物品的数量是无限的,同时有一个背包,最大载重量为 m ,今从 n 种物品中选取若干件(同一物品可以多次选取),使其重量的和小于等于 m...

    字符串反连接

    【题目描述】写一函数,使输入的一个字符串按反序存放,在主函数中输入并输出反序后的字符串(不包含空格)。【输入描述】一行字符【输出描述】逆序后的字符串【样例输入】123456abcdef【样例输出】fe...

    【题解】给定和为定数

    【题目描述】给出若干个整数,询问其中是否有一对数的和等于给定的数。【输入描述】第一行是整数n(0 < n ≤ 100,000),表示有n个整数。第二行是n个整数。整数的范围是在0到108之间。第...

    【题解】求次方和

    【题目描述】    求解 (2^0 + 2^1 + 2^2+ ... + 2^n) % 2333【输入描述】    一行,一个整数n。【输出...

    【题解】红与黑

    【题解】红与黑

    【题目描述】有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。【输入】包括多组数据。每...

    【题解】最小子序列

    【题目描述】给你一个数组 nums,请你从中抽取一个子序列,满足该子序列的元素之和 严格 大于未包含在该子序列中的各元素之和。如果存在多个解决方案,只需返回 长...