【C语言】求最大公约数/最小公倍数

来源:互联网 发布:payload c语言 编辑:程序博客网 时间:2024/06/10 02:41

思路:

1.首先求得最大公约数。

   依据最大公约数的概念,从 (小的数字-1) 往下遍历相除,如果两个数都可以整除,则循环停止,输出该数,即为最大公约数。

2.通过最大公约数,得到最小公倍数。

  A B的最大公约数是 C,则A B的最小公倍数为 A*B/ C

 

public class TwoNum {public static void main(String[] args) {System.out.println(MaxDivisor(14, 7));System.out.println(MinMultiple(2, 7));}private static int MaxDivisor(int a, int b){if (a>b){  // a 是小数 b 是大数int temp = a+b;a = temp-a;b = temp-a;}for (int i = a; i > 1; i--){if (a % i == 0 && b % i == 0){return i;}}return 1;  } private static int MinMultiple(int a,int b){return a * b / MaxDivisor(a, b);  }}



 

原创粉丝点击