输入两个正整数,输出最大公约数,java
时间: 2024-09-21 22:02:21 浏览: 39
在Java中,计算两个正整数的最大公约数(Greatest Common Divisor, GCD)可以使用欧几里得算法(Euclidean Algorithm)。这个算法基于这样一个性质:对于任意三个正整数a、b和c,如果d是a和b的最大公约数,那么d也是a除以b的余数r和b的最大公约数。
以下是使用Java实现的一个简单版本:
```java
public class Main {
public static int gcd(int num1, int num2) {
// 如果num2为0,则返回num1作为最大公约数
if (num2 == 0) {
return num1;
} else {
// 否则,递归地计算两个较小数的最大公约数
return gcd(num2, num1 % num2);
}
}
public static void main(String[] args) {
int num1 = 48, num2 = 18; // 要计算最大公约数的两个数字
System.out.println("The greatest common divisor of " + num1 + " and " + num2 + " is: " + gcd(num1, num2));
}
}
```
在这个程序中,`gcd()`函数接受两个参数,通过不断将较大的数替换为其与较小数的差,直到其中一个变成0,此时另一个数就是两数的最大公约数。
阅读全文