一.最大公约和和最小公倍数
#include<iostream.h>
int a,b,c,d;
int fun(int x , int y)
{
if(!y)
return x;
else return fun(y,x%y);
}
int main()
{
cout<<"请输入两个整数:";
cin>>a>>b;
if(a>b)
c=fun(a,b);
else c=fun(b,a);
cout<<"其最大公约数为:"<<c<<endl;
d=a*b/c;
cout<<"最小公倍数为:"<<d<<endl;
return 0;
}
二. 特殊三位数
#include<iostream.h>
long fun(int n);
void main()
{
int n,m,a,b,c,sum;
cout<<"满足条件n=a!+b!+c!的所有三位数为:";
for(n=100;n<1000;n++)
{
m=n;
a=m/100;
m=m%100;
b=m/10;
c=m%10;
sum=fun(a)+fun(b)+fun(c);
if (n==sum)
cout<<n<<endl;
}
}
long fun(int n)
{
long g=1;
for(int i=1;i<=n;i++)
g*=i;
return g;
}