java 从键盘输入两个数a、b求出其最大公约数和最小公倍数
时间: 2024-09-25 08:02:29 浏览: 46
输入两个正整数m和n求其最大公约数和最小公倍数 (2).pdf
在Java中,我们可以使用欧几里得算法来求两个数的最大公约数(Greatest Common Divisor, GCD),然后通过公式 `lcm(a, b) = |a * b| / gcd(a, b)` 来求最小公倍数(Least Common Multiple, LCM)。以下是相关的代码:
```java
import java.util.Scanner;
public class Main {
// 求最大公约数的欧几里得算法
public static int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
// 求最小公倍数
public static int lcm(int a, int b) {
return a * (b / gcd(a, b));
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个数a:");
int a = scanner.nextInt();
System.out.println("请输入第二个数b:");
int b = scanner.nextInt();
int resultGcd = gcd(a, b);
int resultLcm = lcm(a, b);
System.out.println("最大公约数 (GCD): " + resultGcd);
System.out.println("最小公倍数 (LCM): " + resultLcm);
}
}
```
这个程序首先通过`Scanner`获取用户输入的两个数,然后分别计算它们的最大公约数和最小公倍数,并打印出来。
阅读全文