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

    你可能感兴趣的文章
    mYSQL 外键约束
    查看>>
    mysql 多个表关联查询查询时间长的问题
    查看>>
    mySQL 多个表求多个count
    查看>>
    mysql 多字段删除重复数据,保留最小id数据
    查看>>
    MySQL 多表联合查询:UNION 和 JOIN 分析
    查看>>
    MySQL 大数据量快速插入方法和语句优化
    查看>>
    mysql 如何给SQL添加索引
    查看>>
    mysql 字段区分大小写
    查看>>
    mysql 字段合并问题(group_concat)
    查看>>
    mysql 字段类型类型
    查看>>
    MySQL 字符串截取函数,字段截取,字符串截取
    查看>>
    MySQL 存储引擎
    查看>>
    mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
    查看>>
    MySQL 存储过程参数:in、out、inout
    查看>>
    mysql 存储过程每隔一段时间执行一次
    查看>>
    mysql 存在update不存在insert
    查看>>
    Mysql 学习总结(86)—— Mysql 的 JSON 数据类型正确使用姿势
    查看>>
    Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结
    查看>>
    Mysql 学习总结(88)—— Mysql 官方为什么不推荐用雪花 id 和 uuid 做 MySQL 主键
    查看>>
    Mysql 学习总结(89)—— Mysql 库表容量统计
    查看>>