c++ 的几个问题
答案:3 悬赏:50 手机版
解决时间 2021-05-07 08:33
- 提问者网友:疯孩纸
- 2021-05-07 03:15
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
void gotbaha(int);
int n;
cout<<"请输入一个大于6的偶数吧"<<endl;
gotbaha(n);
return 0;
}
void godbaha(int n)
{int prime(int);
int a,b;
for(a=3;a<=n/2;a=a+2)
{if(prime(a))
{b=n-a;
if (prime(b))
cout<<n<<"="<<a<<"+"<<b<<endl;}
}
}
int prime(int m)
{int i,k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break;
if (i>k) return 1;
else return 0;
}
我想做哥德巴赫猜想,怎么这个程序老是错?
最佳答案
- 五星知识达人网友:空山清雨
- 2021-05-07 03:58
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
void gotbaha(int);
int n;
cout<<"请输入一个大于6的偶数吧"<<endl;
cin>>n;//原来没有输入语句
gotbaha(n);
return 0;
}
void gotbaha(int n)//函数名不一样
{int prime(int);
int a,b;
for(a=3;a<=n/2;a=a+2)
{if(prime(a))
{b=n-a;
if (prime(b))
cout<<n<<"="<<a<<"+"<<b<<endl;}
}
}
int prime(int m)
{int i,k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break;
if (i>k) return 1;
else return 0;
}
全部回答
- 1楼网友:孤独的牧羊人
- 2021-05-07 05:39
问题很多,我改了,你对比一下:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
void gotbaha(int);
int n;
cout<<"请输入一个大于6的偶数吧"<<endl;
cin>>n;
gotbaha(n);
return 0;
}
void gotbaha(int n)
{int prime(int);
int a,b;
for(a=3;a<n;a=a+2)
{if(prime(a))
{b=n-a;
if (prime(b)&&b%2==1)
cout<<n<<"="<<a<<"+"<<b<<endl;}
}
}
int prime(int m)
{int i;
for(i=2;i<=sqrt(m);i++)
if(m%i==0) return 0;
return 1;
}
结果是 每个不小于6的偶数都可以表示为两个奇素数之和 的所有情况:
- 2楼网友:詩光轨車
- 2021-05-07 05:07
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
void godbaha(int); //你的子函数声明时函数名写错了gotbaha,和下面声明的不一致。
int n;
cout<<"请输入一个大于6的偶数吧"<<endl;
gotbaha(n);
return 0;
}
void godbaha(int n)
{int prime(int);
int a,b;
for(a=3;a<=n/2;a=a+2)
{if(prime(a))
{b=n-a;
if (prime(b))
cout<<n<<"="<<a<<"+"<<b<<endl;}
}
}
int prime(int m)
{int i,k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break;
if (i>k) return 1;
else return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯