zoukankan      html  css  js  c++  java
  • 哥德巴赫猜想

    哥德巴赫猜想
    哥德巴赫猜想:任一大于 2 的偶数,都可表示成两个素数之和。
    验证: 2000 以内大于 2 的偶数都能够分解为两个素数之和。
    1)问题分析
    为了验证哥德巴赫猜想对
    2000 以内大于 2 的偶数都是成立的,要将整数分解为两部分
    (两个整数之和),然后判断分解出的两个整数是否均为素数。若是,则满足题意;否则重新
    进行分解和判断。素数测试的算法可采用试除法,即用
    234,…, n 去除 n,如果能被
    整除则为合数,不能被整除则为素数。

    //算法 
    
    #include<iostream>
    #include<math.h>
    int prime(int n); //判断是否均为素数
    int main()
    {
    int i,n;
    for(i=4;i<=2000;i+=2) //对 2000 大于 2 的偶数分解判断,从 4 开始,每次增 2
    {
    for(n=2;n<i;n++) //将偶数 i 分解为两个整数,一个整数是 n,一个是 i-n
    if(prime(n)) //判断第一个整数是否均为素数
    if(prime(i-n)) //判断第二个整数是否均为素数
    {
    cout<< i <<"=" << n <<"+"<<i-n<<endl; //若均是素数则输出
    break;
    }
    if(n==i)
    cout<<"error "<<endl;
    }
    }
    int prime(int i) //判断是否为素数
    {
    int j;
    if(i<=1) return 0;
    if(i==2) return 1;
    for(j=2;j<=(int)(sqrt((double)i);j++)
    if(!(i%j)) return 0;
    return 1;
    }
  • 相关阅读:
    java 类的关系
    Oracle lock table
    shell 标准输出重定向
    pygame 安装
    进程检查机制
    oracle pivot unpivot
    qt paintEvent
    centos7.5+Ambari2.7.3部署安装
    Linux机器间配置ssh互信
    普通视图和物化视图的区别
  • 原文地址:https://www.cnblogs.com/nothx/p/8505236.html
Copyright © 2011-2022 走看看