求最大公约数(辗转相除法)、最小公倍数

  • 辗转相除法(又称欧几里得算法)就是一个机械地求解最大公约数问题的算法。在辗转相除法中分为使用除法运算和使用减法运算两种方法。使用减法运算简单易懂,步骤如图5.2所示。用两个数中较大的数减去较小的数(步骤),反复进行上述步骤,直到两个数的值相等(步骤的终止)。如果最终这两个数相同,那么这个数就是最大公约数。
    在这里插入图片描述
  • 代码实现(Java)
public static int getMax(int a, int b) {
		while(a != b) {
			if(a > b) {
				a = a - b;
			} else {
				b = b - a;
			}
		}	
		return a;
	}

测试结果

public static void main(String[] args) {
		int a = 12;
		int b = 42;
		System.out.println("最大公约数为:" + getMax(a, b));
		//System.out.println(getMin(a, b));
	}

在这里插入图片描述

  • 求最小公倍数
    用两个整数的乘积除以这两个整数的最大公约数。

猜你喜欢

转载自blog.csdn.net/weixin_37711738/article/details/89429785