import java.util.Scanner;
public class Main {
//欧几里得定理
public static int gcd(int a,int b){
if(b==0)return a;
return gcd(b,a%b);
}
public static void main(String[] args){
System.out.println("8:16 = "+gcd(8,16));
System.out.println("8:2 = "+gcd(8,2));
System.out.println("8和15的最小公倍数: "+lcm(8,15));
}
//最小公倍数定理
// a = 1*3*7 *5;
// b = 1*3*7 *6;
// 最小公倍数的算数定理 质因数分解
// n = p1^n1 * p2^n2 * p3^n3
// 一个数的质因数分解是唯一的,他的每个质因数有可能出现多次
//求2个数的最小公倍数就是 ,把两个数相乘后,再去除掉他们共同的质因数
public static int lcm(int a,int b){
return a*b/gcd(a,b);
}
}
欧几里得算法。
最新推荐文章于 2024-08-17 21:20:04 发布
本文介绍了一个Java程序实现的欧几里得算法来计算最大公约数(GCD),并利用该结果计算两个整数的最小公倍数(LCM)。通过递归方式简化了最大公约数的计算过程,并展示了如何根据最大公约数来快速找到最小公倍数。
摘要由CSDN通过智能技术生成