博客
关于我
输入两个正整数m 和n,求其最大公约数和最小公倍数 (Java经典编程案例)
阅读量:733 次
发布时间:2019-03-22

本文共 1031 字,大约阅读时间需要 3 分钟。

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

在编程中,求两个正整数的最大公约数(GCD)和最小公倍数(LCM)是一个常见的问题。本文将详细介绍一种高效的求解方法。

思路分析

最大公约数可以通过辗转相除法来求解。具体步骤如下:

  • 在循环中,只要除数不等于0,继续执行。
  • 将较大的数除以较小的数,取余数。
  • 将余数作为新的较小的数,将原来的较小的数作为新的较大的数。
  • 重复上述步骤,直到较小的数为0,此时较大的数即为最大公约数。
  • 最小公倍数则可以通过公式:最小公倍数 = 两个数的乘积 / 最大公约数来计算。
  • 代码示例

    以下是实现上述方法的Java代码:

    public class Example {  
    public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    System.out.print("请输入正整数m的值:");
    int m = scanner.nextInt();
    System.out.print("请输入正整数n的值:");
    int n = scanner.nextLong();
    int a = division(m, n);
    int b = (m / a) * n; // 可以直接使用 m * n / a 来计算
    System.out.println(m + "和" + n + "的最大公约数为:" + a + ",最小公倍数为:" + b);
    }
    public int division(int x, int y) {
    int temp;
    while (y != 0) {
    temp = x % y;
    x = y;
    y = temp;
    }
    return x;
    }
    }

    执行结果

    运行上述代码并输入两个正整数,程序将输出它们的最大公约数和最小公倍数。

    总结

    通过上述方法和代码,我们可以快速且高效地求解两个正整数的最大公约数和最小公倍数。这种方法不仅适用于编程,还可以在数学计算中得到实际应用。

    转载地址:http://vezwk.baihongyu.com/

    你可能感兴趣的文章
    php怎么将对象变成数组,php怎么将对象转换成数组
    查看>>
    RabbitMQ - 消息堆积问题的最佳解决方案?惰性队列
    查看>>
    php怎样比较两数大小,jquery如何判断两个数值的大小
    查看>>
    PHP性能监控 - 开启xhprof(一)
    查看>>
    PHP性能监控 - 怎么看xhprof报告(二)
    查看>>
    php截取字符串代码,PHP字符串截取_php
    查看>>
    php截取字符串,无乱码
    查看>>
    php手冊,php手冊之變量范圍
    查看>>
    PHP手机号码归属地查询API接口
    查看>>
    PHP执行耗时脚本实时输出内容
    查看>>
    PHP扩展安装
    查看>>
    PHP扩展数据库连接参数说明详解
    查看>>
    php把get参数放入数组_php怎么将数组转为url参数?
    查看>>
    PHP投票小程序
    查看>>
    php拆分数组不改变key值
    查看>>
    php接口返回数据 用echo 还是return?
    查看>>
    php接口返回状态,大家一般怎么规范接口返回内容
    查看>>