算法题:给你一个自然数N,求[6, N]之内的所有素数中, 两两之和为偶数的那些偶数。

来源:互联网 发布:网络教育有毕业证吗 编辑:程序博客网 时间:2024/06/05 07:15
/*算法题:给你一个自然数N,求[6, N]之内的所有素数中,两两之和为偶数的那些偶数。*/#include <iostream>using namespace std;void Grial(int n){    int *b = new int[n];    int k = 0;    b[k++] = 2;    b[k++] = 3;    b[k++] = 5;    for (int i = 6; i < n; i++)    {        int j;        for (j = 0; j < (k+1) / 2 ;j++)        {            if (i%b[j] == 0)break;        }        if(j == (k+1) / 2)        b[k++] = i;    }    //已经找出了6-N的所有素数,那么要求和是这些素数之和的偶数    //只需要冒泡遍历所有的6-N的所有素数之后就OK。    for (int i = 3; i < k-1; i++)    {        for (int j = i+1; j < k; j++)        {            cout << b[i]<<"+"<<b[j]<<"="<<b[i] + b[j];            cout << endl;        }    }}int main(){    Grial(100);}
2 0