算法

来源:互联网 发布:志鸿优化答案查询 编辑:程序博客网 时间:2024/06/03 21:02
    //****************************************************************************************************      //      //  求两个自然数的最小公倍数 - C++ - by Chimomo      //      //  最小公倍数 = 两数的乘积 / 最大公约数      //      //****************************************************************************************************      #include <iostream>      #include <cassert>      #include <stack>      #include <math.h>      using namespace std ;      int GreatestCommonDivisor(int a, int b)      {          int temp;          if(a < b)          {              // 交换两个数,使大数放在a的位置上。              temp = a;              a = b;              b = temp;          }          while(b != 0)          {              // 利用辗转相除法,直到b为0为止。              temp = a % b;              a = b;              b = temp;          }          return a;      }      int LeastCommonMultiple(int a, int b)      {          int temp = a * b / GreatestCommonDivisor(a, b);          return temp;      }      int main()      {          cout << LeastCommonMultiple(318, 87632) << endl;          return 0;      }      // Output:      /*      13933488      */  
0 0
原创粉丝点击