#NOIP2010J1Q29. [NOIP 2010 普及组初赛] 第 29 题

[NOIP 2010 普及组初赛] 第 29 题

(哥德巴赫猜想)

哥德巴赫猜想是指,任一大于2的偶数都可写成两个质数之和。 迄今为止,这仍然是一个著名的世界难题,被誉为数学王冠上 的明珠。试编写程序,验证任一大于2且不超过n的偶数都能写 成两个质数之和。

#include <iostream>
using namespace std;

int main()
{
    const int SIZE = 1000;

    int n, r, p[SIZE], i, j, k, ans;
    bool tmp;

    cin>>n;
    r = 1;
    p[1] = 2;
    for (i = 3; i <= n; i++) {
     【第1空】;
    for (j = 1; j <= r; j++)
        if (i %【第2空】== 0) {
            tmp = false;
            break;
        }
    if (tmp) {
        r++;
        【第3空】    ;
    }
}

ans = 0;
for (i = 2; i <= n / 2; i++) {
    tmp = false;
    for (j = 1; j <= r; j++)
        for (k = j; k <= r; k++)
            if (i + i == 【第4空】 ) {
                tmp = true;
                break;
            }
    if (tmp)
        ans++;
	}
cout << ans << endl;
    return 0;
}

请填写【第2空】。

{{ input(1) }}