gcd(最大公因数),lcm(最小公倍数)
1 #include<iostream> 2 using namespace std; 3 int gcd(int a,int b)//辗转相除法(欧几里德算法)求最大公约数 4 { 5 return b ? gcd(b,a%b) : a; 6 } 7 int lcm(int a,int b) 8 { 9 return a*b/gcd(a,b);//最小公倍数 10 } 11 int main() 12 { 13 int a,b; 14 while(cin>>a>>b) 15 { 16 cout<<gcd(a,b)<<endl; 17 cout<<lcm(a,b)<<endl; 18 } 19 return 0; 20 } 21