//求解最小公倍数 输入m,n (m>n) #解法一,循环求解 算法思想: 设置一个循环变量i初始化为m 1.如果m==n,返回最小公倍数为m. 2.否则,当i%m==0 && i%n==0成立时,找到最小公倍数i. 3.否则i++,继续执行步骤2. int gcd(int m,int n) { if(m == n) return m; for(int i=m;;i++) if(i%m == 0 && i%n ==0) return i; } #解法二,利用最大公约数求解,最小公倍数=m*n/m和n的最大公约数 //求最大公约数 int max_yueshu(int m,int n) { if(m % n == 0) return n; return max_yueshu(n,m%n); } //求最小公倍数 int gcd(int m,int n) { return m*n/max_yueshu(m,n); }