解题思路:
题目要求素数对的组合,那么我们可以将2到输入变量所有的素数用一个数组存起来
接着两个循环求解。
注意事项:
注意循环的起始量,题目要求两个相同素数也满足条件,那么两个
初始值设为一样的值。
参考代码:
#include<iostream>
using namespace std;
int main(){
int i,j,k,m,n,a[10000];
while(cin>>n){
int l=0,s=0,s1=0;
for(i=2;i<n;i++){
m=0;
k=i/2;
for(j=2;j<=k;j++){
if(i%j==0){
m=1;
break;
}
}
if(m==0){
a[l]=i;
l++;
}
}
for(i=0;i<l;i++){
for(j=i;j<l;j++){
if(a[i]+a[j]==n)
s++;
else if(a[i]+a[j]==n)
s1++;
}
}
cout<<s+s1<<endl;
}
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:689 |
Cylinder (C语言描述+详细分析)浏览:3375 |
老王赛马 (C++代码)浏览:973 |
C语言程序设计教程(第三版)课后习题10.7 指针(C语言代码)浏览:597 |
C语言程序设计教程(第三版)课后习题10.7 (C++代码)浏览:666 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:316 |
P1025 (C语言代码)浏览:1061 |
字符逆序 (C语言代码)浏览:984 |
求组合数 (C语言代码)浏览:1572 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:654 |