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 }