1.新建GcdLcm类,在main中测试所调用的方法。
import java.util.Scanner;
public class GcdLcm {
public static void main(String[] args) {
while (true) {
// 可以输入
Scanner scanner = new Scanner(System.in);
System.out.print("请输入两个正整数:");
int m = scanner.nextInt();
int n = scanner.nextInt();
System.out.println("最大公约数:" + gcd(m, n));
System.out.println("最小公倍数:" + lcm(m, n));
}
}
public static int gcd(int m, int n) {
// 用于记录最大数
int max = 1;
for (int i = 1; i <= n; i++) {
if (m % i == 0 && n % i == 0) {
if (i > max) {
max = i;
}
}
}
return max;
}
public static int lcm(int m, int n) {
//将m,n转化成最小公约数为1,那之后他们的乘积就是代表最小公倍数
return n * m / gcd(m, n);
}
}
2.代码运行效果