最大公约数小于两个数小的那个,最小公倍数大于两个数大的那个。
求最大公约数从大到小寻找,求最小公倍数从小到大寻找,也就是说循环方向。
import java.util.Scanner;public class JavaTest {public static void main(String[] args) {//从键盘输入获取两个数Scanner scan = new Scanner(System.in);System.out.println("请输入第一个正数:");int m = scan.nextInt();System.out.println("请输入第二个正数:");int n = scan.nextInt();//取出两个数中的最大和最小值用于后面作用int max = (m >= n)? m : n;int min = (m <= n)? m : n;//求最大公约数for (int i = min; i >= 1; i--){if (m % i == 0 && n % i ==0){System.out.println("最大公约数是:" + i);break;}}//求最小公倍数for (int i = max; i <= m * n; i++){if (i % m == 0 && i % n == 0){System.out.println("最小公倍数是:" + i);break;}}}
}