Java重写《C经典100题》 --16
Posted Java重写《C经典100题》
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java重写《C经典100题》 --16相关的知识,希望对你有一定的参考价值。
【程序16】
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
1.程序分析:从小数开始向下求最大公约数,从大数向上求最小公倍数。。
2.程序源代码:
1 /*本文转自博客:www.cnblogs.com/java-100 2 【程序16】 3 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 4 程序分析:从小数开始向下求最大公约数,从大数向上求最小公倍数。 5 */ 6 7 public class Java16 { 8 9 public static void main(String[] args) { 10 System.out.print("请输入m,n两个正整数,中间以空格隔开:"); 11 Scanner scanner = new Scanner(System.in); 12 int m = scanner.nextInt(); 13 int n = scanner.nextInt(); 14 scanner.close(); 15 int greatestCommonDivisor = 0, leastCommonMultiple = 0; 16 int min = m < n ? m : n; 17 int max = m > n ? m : n; 18 System.out.println("m=" + m + ",n=" + n); 19 for (int i = min; i >= 2; i--) { 20 if (m % i == 0 && n % i == 0) { 21 greatestCommonDivisor = i; 22 break; 23 } 24 } 25 System.out.println("最大公约数:" + greatestCommonDivisor); 26 for (int i = max; i <= m * n; i++) { 27 if (i % m == 0 && i % n == 0) { 28 leastCommonMultiple = i; 29 break; 30 } 31 } 32 System.out.println("最小公倍数:" + leastCommonMultiple); 33 } 34 }
以上是关于Java重写《C经典100题》 --16的主要内容,如果未能解决你的问题,请参考以下文章