求两个数的最大公约Java
时间: 2024-10-13 17:03:59 浏览: 14
Java中使用辗转相除法求最大公约数
在Java中,求两个数的最大公约数(Greatest Common Divisor,简称GCD)通常可以使用欧几里得算法(Euclidean Algorithm),也称为辗转相除法。以下是通过递归实现的一个简单示例:
```java
public class Main {
public static int gcd(int num1, int num2) {
if (num2 == 0) { // 如果第二个数为0,第一个数就是最大公约数
return num1;
} else { // 否则,继续用较小的那个数去除较大数,直到余数为0
return gcd(num2, num1 % num2);
}
}
public static void main(String[] args) {
int a = 48;
int b = 18;
System.out.println("The GCD of " + a + " and " + b + " is: " + gcd(a, b));
}
}
```
在这个例子中,`gcd`函数首先检查第二个数是否为零,如果是,则返回第一个数作为结果。如果不是,它会递归地计算两个数的余数,并用第二个数替换第一个数,直到余数为零,此时的除数即为最大公约数。
阅读全文