1 /*
2 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 3 例如:12和20的最大公约数是4,最小公倍数是60。 4 */
5
6 // 导包
7 import java.util.Scanner; 8
9 public class ForTest { 10 public static void main(String[] args) { 11 // 创建键盘输入对象
12 Scanner sc = new Scanner(System.in); 13
14 // 接收键盘输入的两个整数
15 System.out.println("请输入第一个正整数:"); 16 int m = sc.nextInt(); 17 System.out.println("请输入第二个正整数:"); 18 int n = sc.nextInt(); 19
20 // 获取m和n的较小值
21 int min = m < n ? m : n; 22 // 获取最大公约数
23 for (int i = min; i >= 1; i--) { 24 if (m % i == 0 && n % i == 0) { 25 System.out.println("最大公约数:" + i); 26 break; // 找到最大公约数,跳出循环
27 } 28 } 29
30 // 获取m和n的较大值
31 int max = m > n ? m : n; 32 // 获取最小公倍数
33 for (int i = max; i <= m * n; i++) { 34 if (i % m == 0 && i % n == 0) { 35 System.out.println("最小公倍数:" + i); 36 break; // 找到最小公倍数,跳出循环
37 } 38 } 39
40 } 41 }