用java求两个正整数m,n的最大公约数
时间: 2024-10-24 17:03:01 浏览: 22
Java求两个正整数的最大公约数和最小公倍数
5星 · 资源好评率100%
在Java中,可以使用欧几里得算法(Euclidean Algorithm)来求两个正整数`m`和`n`的最大公约数(Greatest Common Divisor, GCD)。以下是实现的一个简单版本:
```java
public class Main {
public static void main(String[] args) {
int m = 48; // 输入第一个正整数
int n = 18; // 输入第二个正整数
// 使用辗转相除法求最大公约数
int gcd = gcd(m, n);
System.out.println("两个数的最大公约数是: " + gcd);
}
// 欧几里得算法计算gcd
private static int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
}
```
在这个例子中,`gcd`函数递归地调用自身,每次都用较小的数替换原来的较大数,并将余数作为新的较大数。当余数变为0时,较大的数就是两数的最大公约数。
阅读全文