最大公约数和最小公倍数

来源:互联网 发布:易语言微信机器人源码 编辑:程序博客网 时间:2024/06/13 04:19

带助教的时候看到这题很亲切,所以记了下来

 

  1. int main()
  2. {
  3.     int low, high;
  4.     cin>>low>>high;
  5.     
  6.    int d = low*high;
  7.     while(low!=0)
  8.      {
  9.         int temp = high % low;
  10.             high = low;
  11.             low = temp;
  12.      } 
  13.     cout<<high<<" "<<d/high;     //最大公约数 最小公倍数
  14.  
  15.   return 0;
  16.  }


【另解】

  1. int gcd(int x, int y)
  2.  {
  3.      while(x!=y)
  4.      {
  5.          if(x>y)    x=x-y;
  6.          else       y=y-x;
  7.      } 
  8.      return x;
  9.  }
  10.  
  11. int main()
  12. {
  13.    int x, int y;
  14.    while(cin>>x>>y)
  15.    {
  16.        cout<<gcd(x,y)<<endl;        //最大公约数
  17.   
  18.        cout<< x/gcd(x,y)*y <<endl;      //最小公倍数
  19.     }
  20.   
  21.   return0;
  22.  }
  23.     
0 0
原创粉丝点击