输入两个正整数,求其最大公约数和最小公倍数

 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 }

 

 

posted on 2019-05-19 12:30  _Stefanie  阅读(4601)  评论(0编辑  收藏  举报

导航