无间道2粤语完整版在线:关于C++的两道题,能帮我解答吗?

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/29 00:17:25
1:求a!+b!+c!的值,用一个函数fac(n)求n!。a,b,c的值由函数输入,最终得到的值在主函数中输出。

2:写一个函数验证歌德巴赫猜想:一个不小于6的偶数可以表示为两个素数之和,如6=3+3,8=3+5,10=3+7……在主函数中输入一个不小于6的偶数n,然后调用函数gotbaha,在gotbaha函数中再调用prime函数,prime函数的作用是判别一个数是否为素数,在gotbaha函数中输出以下形式的结果:
34=3+31

1)
#include<iostream>
using namespace std;
int fac(int x:long y)
{
return 0;
if (x!=1) {y=y*(x-1);fac(--x,y);} else return (y);
}
int main
{
int a,b,c:
cin>>a>>b>>c;
cout<<"a!+b!+c!="<<fac(a)+fac(b)+fac©<<endl;
return 0;
}

#include <iostream>
#include <math.h>
using namespace std;

bool prime(int n)
{
if(n<2) return false;

for(int i=2;i<=sqrt(n);i++)
if(n%i==0) return false;
return true;
}

bool gotbaha(int n)
{
if(n<6||n%2) return false;//input error

for(int i=n;i>=2;i--)
if(prime(i)&&prime(n-i)) {cout<<n<<"="<<i<<"+"<<n-i<<endl;return true;}
return true;
}

void main()
{
int n;
cout<<"please input a number [2k ∈int k>=3]:";
cin>>n;
if(!gotbaha(n))cout<<"Input Error"<<endl;
}

1:求a!+b!+c!的值,用一个函数fac(n)求n!。a,b,c的值由函数输入,最终得到的值在主函数中输出。

2:写一个函数验证歌德巴赫猜想:一个不小于6的偶数可以表示为两个素数之和,如6=3+3,8=3+5,10=3+7……在主函数中输入一个不小于6的偶数n,然后调用函数gotbaha,在gotbaha函数中再调用prime函数,prime函数的作用是判别一个数是否为素数,在gotbaha函数中输出以下形式的结果:
34=3+31