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
