求兩數的最大公約數和最小公倍數
題目描述
輸入
輸出
樣例輸入
2 3
樣例輸出
1
6
代碼
#include<iostream>
using namespace std;
int GCD(int a,int b)
{
int temp,gcd0;
if(a<b)//大數在a
{
temp=a;
a=b;
b=temp;
}
while(b!=0)//輾轉相除法,大數除以小數,直至除盡
{
temp=a%b;
gcd0=b;
b=temp;
}
return gcd0;
}
int LCM(int a,int b)
{
int lcm0;
lcm0=a*b/GCD(a,b);
return lcm0;
}
int main()
{
int num1,num2,gcd,lcm;
cout<<"求兩個數的最大公約數和最小公倍數"<<endl;
cout<<"請輸入兩個數:";
cin>>num1>>num2;
gcd=GCD(num1,num2);
lcm=LCM(num1,num2);
cout<<"最大公約數爲:"<<gcd<<endl;
cout<<"最小公倍數爲:"<<lcm<<endl;
return 0;
}
體會: