博客
关于我
输入两个正整数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/

    你可能感兴趣的文章
    Oracle创建database link(dblink)和同义词(synonym)
    查看>>
    oracle创建数据库的步骤
    查看>>
    Oracle创建用户、角色、授权、建表
    查看>>
    Oracle创建用户与授予表空间与权限
    查看>>
    oracle创建表(并且实现ID自增)
    查看>>
    oracle创建视图与生成唯一编号
    查看>>
    oracle删除重复数据保留第一条记录
    查看>>
    oracle判断空值的函数nvl2,【PL/SQL】 NVL,NVL2,COALESCE 三种空值判断函数
    查看>>
    Oracle发布VirtualBox 7.1稳定版!支持ARM、优化了UI、支持Wayland等
    查看>>
    oracle启动三步
    查看>>
    oracle启动关闭服务,启动关闭oracle服务.bat
    查看>>
    Oracle命令行创建数据库
    查看>>
    Oracle和SQL server的数据类型比较
    查看>>
    oracle和sybase的一些区别
    查看>>
    oracle在日本遇到的技术问题
    查看>>
    Oracle在线重定义
    查看>>
    oracle基础 管理索引
    查看>>
    Oracle增量跟新
    查看>>
    oracle备份恢复之rman恢复到异机
    查看>>
    oracle复习(一)
    查看>>