生成代码(输入一个正整数N,当输入为偶数时,分行按照格式“N=p+q”输出N的所有素数分解,其中p,q均为素数且p<=q,当输入为奇数或N<4时,输入“错误”
时间: 2024-02-24 09:55:38 浏览: 96
python 输入一个正整数判断它是不是素数 示例
5星 · 资源好评率100%
以下是您要求的代码:
```
#include <iostream>
#include <cstring>
using namespace std;
bool is_prime(int n) {
if (n < 2) return false;
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) return false;
}
return true;
}
void goldbach(int n) {
bool flag = false; // 是否找到一组p,q
for (int i = 2; i <= n / 2; i++) {
if (is_prime(i) && is_prime(n - i)) {
flag = true;
cout << n << "=" << i << "+" << n - i << endl;
}
}
if (!flag) cout << "错误" << endl;
}
int main() {
int n;
cin >> n;
if (n < 4 || n % 2 != 0) {
cout << "错误" << endl;
return 0;
}
goldbach(n);
return 0;
}
```
输入一个正整数N,当输入为偶数时,分行按照格式“N=p+q”输出N的所有素数分解,其中p,q均为素数且p<=q,当输入为奇数或N<4时,输入“错误”
阅读全文