java不用getGCD输入两个正整数m和n,求其最大公约数和最小公倍数
时间: 2024-03-24 15:32:22 浏览: 28
以下是Java求最大公约数和最小公倍数的代码示例:
```java
public class GcdLcmDemo {
// 求最大公约数
public int getGcd(int a, int b) {
if (b == 0) {
return a;
} else {
return getGcd(b, a % b);
}
}
// 求最小公倍数
public int getLcm(int a, int b) {
return a * b / getGcd(a, b);
}
public static void main(String[] args) {
int a = 12;
int b = 18;
GcdLcmDemo demo = new GcdLcmDemo();
System.out.println("最大公约数:" + demo.getGcd(a, b));
System.out.println("最小公倍数:" + demo.getLcm(a, b));
}
}
```
输出结果为:
```
最大公约数:6
最小公倍数:36
```
相关问题
Java输入两个正整数m和n,求其最大公约数和最小公倍数
输入两个正整数m和n,可以使用Java语言来求它们的最大公约数和最小公倍数。根据引用,两个整数的最大公约数等于其中较小的那个数和两数的相除余数的最大公约数。而最小公倍数等于两个数的乘积除以它们的最大公约数,根据引用。因此,可以使用一个方法来分别求出最大公约数和最小公倍数。
具体实现方法如下:
```
import java.util.Scanner;
public class GcdLcm {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("请输入第一个正整数:");
int m = scan.nextInt();
System.out.print("请输入第二个正整数:");
int n = scan.nextInt();
int gcd = getGcd(m, n);
int lcm = m * n / gcd;
System.out.println(m + "和" + n + "的最大公约数为:" + gcd);
System.out.println(m + "和" + n + "的最小公倍数为:" + lcm);
}
// 求最大公约数
public static int getGcd(int a, int b) {
if (b == 0) {
return a;
} else {
return getGcd(b, a % b);
}
}
}
```
在这个程序中,首先使用Scanner类获取用户输入的两个正整数m和n。然后,调用getGcd方法求出它们的最大公约数,再根据引用求出最小公倍数。最后,输出结果。
java写输入两个正整数m和n,求其最大公约数和最小公倍数。
面是Java代码,可以输入两个正整数m和n,求其最大公约数和最小公倍数:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入第一个数:");
int m = input.nextInt();
System.out.print("请输入第二个数:");
int n = input.nextInt();
int gcd = getGcd(m, n);
int lcm = getLcm(m, n);
System.out.println("最大公约数为:" + gcd);
System.out.println("最小公倍数为:" + lcm);
}
// 求最大公约数
public static int getGcd(int a, int b) {
if (b == 0) {
return a;
} else {
return getGcd(b, a % b);
}
}
// 求最小公倍数
public static int getLcm(int a, int b) {
return a * b / getGcd(a, b);
}
}
```