主题:[讨论]求助!C语言编写,求任意两数最大公约数和最小公倍数!
cq1988124
[专家分:30] 发布于 2007-12-29 10:01:00
输入任意两个数,要求输出两数的 最大公约数和最小公倍数!
回复者必加分~
回复列表 (共22个回复)
21 楼
shirley861014 [专家分:0] 发布于 2010-10-13 10:35:00
要求调用两个函数,求两个整数的最小公倍数(LCM)和最大公约数(GCD)。
#include <iostream>
using namespace std;
int GCD(int a,int b);
int LCM(int a,int b,int n); //函数声明
int main()
{
int a,b,m,n,t;
cout<<"Please enter two integer numbers a,b:";
cin>>a>>b;
if(a==b)
{
cout<<"两个整数的最小公倍数和最大公约数均为:"<<a<<endl;
}
else if(a<b)
{
t=a;
a=b;
b=t;
n=GCD(a,b); //调用最大公约数函数,得到返回值m为GCD
m=LCM(a,b,n); //调用最小公倍数函数,得到返回值n为LCM
}
else
{
n=GCD(a,b);
m=LCM(a,b,n);
}
cout<<"两个整数的最大公约数为:"<<n<<endl;
cout<<"两个整数的最小公倍数为:"<<m<<endl;
return 0;
}
int GCD(int a,int b)
{
int t,n;
while(t!=0)
{t=a%b;
a=b;
b=t;
}
n=a;
return n;
}
int LCM(int a,int b,int n)
{
int m;
m=a*b;
m=m/n;
return m;
}
22 楼
阿仕先生 [专家分:0] 发布于 2010-10-16 21:10:00
太好啦,各位。请你们到阿仕先生的帖子帮一帮。
我来回复