关于#c++#的问题:输出表示每个偶数的哥德巴赫猜想表达式

一行两个整数m和n,4<=n<=m<=100,输出表示每个偶数的哥德巴赫猜想表达式

#include <iostream>
#include <vector>    // 使用vector存储素数
using namespace std;

// 判断一个数是否为素数
bool is_prime(int n) {
    if (n <= 1) {
        return false;
    }
    for (int i = 2; i * i <= n; i++) {
        if (n % i == 0) {
            return false;
        }
    }
    return true;
}

int main() {
    int m, n;
    cin >> m >> n;    // 输入m和n,4<=n<=m<=100

    vector<int> primes;    // 存储素数的vector
    for (int i = 2; i <= n; i++) {    // 遍历2到n的每个数
        if (is_prime(i)) {    // 如果该数是素数,将其加入vector中
            primes.push_back(i);
        }
    }

    for (int i = 4; i <= m; i += 2) {    // 遍历4到m的每个偶数
        cout << i << "=";    // 输出当前偶数
        for (int j = 0; j < primes.size(); j++) {    // 遍历vector中的素数
            if (is_prime(i - primes[j])) {    // 如果i减去该素数仍为素数,即找到了一组符合哥德巴赫猜想的两个素数
                cout << primes[j] << "+" << i - primes[j] << endl;    // 输出两个素数的和
                break;
            }
        }
    }

    return 0;
}