验证哥德巴赫猜想,一个大于4的偶数,可以分解成两个素数之和,要求判断素数用函数实现

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/03 02:53:50
验证哥德巴赫猜想,一个大于4的偶数,可以分解成两个素数之和,要求判断素数用函数实现
xU[OG+SWֻK}oTwgqc]UTIhZQ"*%SBzW"J3m̜|m`}w);}~ԽRt杳9_M79owY~3j0,˟hm [B](~te }S [y ~j_v.A;ُ ݣ )YdKźxAnOSBJC!ZjPYNRh9]"6X D C8sYp0:|JlkTxENrHDca,+,tɓ}YU8;n)qo<oD瀩F^E:VfU;>:m_](^8PvLx(0hTڵ_ f-Gу3NN]0#qar5;\(%2>T?f*I3+c *L&#A] ꢿHE[PM?O!pn>7DԿQ1t`yn 27t5'fiղ3Sd5%PTHTVժCjUL|`,K)R%2SZ MN੸ TMI]X,+c#<q9RT,$oKrʋ%Ս%FVNf٤ⲚNa#n$ Z2Ɖ[5ɪth}ɛXhe'5Bcvs]>"{@uAy,Wu eױj:aZDT514!:jE6L#FE-"Ÿ)AeQ~yY3u;izE3`x z|oWFcKWw&{7N-@wto}xkF~%"/'hzz66kNOM˔z!d?g "C,O.P l4Ҫ \ Bxzet^ˍ7ק}ȿ޸U

验证哥德巴赫猜想,一个大于4的偶数,可以分解成两个素数之和,要求判断素数用函数实现
验证哥德巴赫猜想,一个大于4的偶数,可以分解成两个素数之和,要求判断素数用函数实现

验证哥德巴赫猜想,一个大于4的偶数,可以分解成两个素数之和,要求判断素数用函数实现

可以做到,不过你要限定一个偶数的上限,比如上限是50,具体的代码如下:

#include <stdio.h>

#include<math.h>

 int sushu(int i)   //判定数是否为素数

    int a=1;

 for(int j=2;j<i;j++)

  if(i%j==0) a=0;

   if(a==1)

          return 1;  

   else

    return 0;

    

}

void main ()

{

 int x,t,n;

 printf("请输入你想要分解的偶数的上限:");

 scanf("%d",&n);

 for( t=2;t<=n;t=t+2)

 for(int m=2;m<=t;m++)

  for(int n=m;n<=t;n++)

  {

   if(m+n==t&&sushu(m)&&sushu(n))

   {

       printf("%d+%d=%d,",m,n,t);

          printf("  两素数分别是:%d,%d\n",m,n);

          printf("\n");

   }

  }

}

运行截图如下:

无法实现。否则哥德巴赫猜想就可以证明出来了。现在只是算到了1+2=3

#include "iostream"
using namespace std;
#include "math.h"
int Judge(int num)
{
int flag = 1;
for(int j =2 ; j <= sqrt(num) ; j++)
{
if(num % j == 0)
{
flag = 0...

全部展开

#include "iostream"
using namespace std;
#include "math.h"
int Judge(int num)
{
int flag = 1;
for(int j =2 ; j <= sqrt(num) ; j++)
{
if(num % j == 0)
{
flag = 0;
break;
}
}
if(flag)
return 1;
return 0;
}
void main()
{
int num;
cin >> num;
int temp = num;
for(int i = 2 ; i < num ; i++)
{
temp = num;
if(Judge(i))
{
temp -= i;
if(Judge(temp) && temp != 1)
cout << temp << " " << i << endl;
}
}
}

收起