JAVA计算两个最大公约数最小公倍数
时间: 2024-09-06 13:06:23 浏览: 41
计算最大公约数和最小公倍数的常见算法
在Java中计算两个数的最大公约数(Greatest Common Divisor, GCD)通常使用欧几里得算法,而最小公倍数(Least Common Multiple, LCM)则可以通过两数的乘积除以它们的最大公约数来得到。以下是一个简单的Java示例代码来说明如何实现这两个功能:
```java
public class GCDAndLCM {
// 使用欧几里得算法计算最大公约数
public static int gcd(int a, int b) {
while (b != 0) {
int temp = b;
b = a % b;
a = temp;
}
return a;
}
// 计算最小公倍数
public static int lcm(int a, int b) {
return a / gcd(a, b) * b; // 先除后乘防止溢出
}
public static void main(String[] args) {
int num1 = 30;
int num2 = 45;
int greatestCommonDivisor = gcd(num1, num2);
int leastCommonMultiple = lcm(num1, num2);
System.out.println("两个数 " + num1 + " 和 " + num2 + " 的最大公约数是: " + greatestCommonDivisor);
System.out.println("两个数 " + num1 + " 和 " + num2 + " 的最小公倍数是: " + leastCommonMultiple);
}
}
```
这段代码首先定义了一个`gcd`方法,用于计算两个整数的最大公约数,然后定义了一个`lcm`方法,用于计算两个整数的最小公倍数。在`main`方法中,我们通过调用这两个方法来输出两个数的最大公约数和最小公倍数。
阅读全文