代码
#include <iostream>
#include <math.h>
using namespace std;
bool isPrime(int n){
for(int i=2; i<=sqrt(n); i++){
if(n%i==0){
return false;
}
}
return true;
}
void process(int a) {
int count = 0;
for(int i=2; i<=a/2; i++){
int b = a-i;
if(i!=b){
if(isPrime(i) && isPrime(b)){
count++;
}
}
}
cout<<count<<endl;
}
int main() {
int a;
cin>>a;
while(a) {
process(a);
cin>>a;
}
return 0;
}
注解
1、判断素数。
2、注意题目要求的是拆分成两个不同的素数。