Java 输入两个正整数m和n,求其最大公约数和最小公倍数用switch 语句
时间: 2023-11-03 16:30:11 浏览: 88
好的,我可以帮你解答这个问题。
你可以参考以下代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int m = input.nextInt();
int n = input.nextInt();
int max, min;
switch (m >= n ? n : m) {
case 1:
max = 1;
min = m * n;
break;
default:
max = 1;
for (int i = 2; i <= m && i <= n; i++) {
if (m % i == 0 && n % i == 0) {
max = i;
}
}
min = m * n / max;
break;
}
System.out.println("最大公约数:" + max);
System.out.println("最小公倍数:" + min);
}
}
```
在这个代码中,我们使用了 switch 语句来判断最小值(m 和 n 中的较小值)为 1 或者大于 1 的情况。当最小值为 1 时,最大公约数为 1,最小公倍数为 m 和 n 的乘积;当最小值大于 1 时,我们使用 for 循环来找到最大公约数,然后计算最小公倍数。
希望这个代码可以帮助到你,如果你还有其他问题,请继续提问。
阅读全文