博客
关于我
最小公倍数
阅读量:581 次
发布时间:2019-03-11

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

计算两个正整数的最小公倍数(LCM),可以通过以下步骤实现:

  • 求最大公约数(GCD):使用欧几里得算法,通过不断取余数计算两个数的最大公约数。具体步骤如下:

    • 令较大的数为 a,较小的为 b
    • 进入循环:a = b, b = a % b,直到 b 为 0,此时 a 即为 GCD。
  • 计算最小公倍数:利用公式 LCM(a, b) = (a × b) / GCD(a, b)。这是因为乘积除以最大公约数会去掉重复的质因数,从而得到最小可能的公倍数。

  • 实现步骤

    • 读取输入的两个正整数 mn
    • 调用 gcd 函数计算两数的最大公约数。
    • 使用公式计算最小公倍数,并输出结果。

    示例验证

    • 对于输入 1014
      • GCD(10, 14) = 2
      • LCM = (10 × 14) / 2 = 70
    • 对于输入 55
      • GCD(5, 5) = 5
      • LCM = (5 × 5) / 5 = 5

    代码实现

    #include 
    int gcd(int a, int b) { while (b != 0) { a = b; b = a % b; } return a;}int main() { int m, n; while (scanf("%d %d", &m, &n)) { int gcd_val = gcd(m, n); int lcm = (m * n) / gcd_val; printf("%d\n", lcm); } return 0;}

    输出示例

    • 输入:10 14
      • 输出:70
    • 输入:5 5
      • 输出:5

    这个程序能够有效计算两个正整数的最小公倍数,处理所有符合条件的输入。

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

    你可能感兴趣的文章
    MySQL Troubleshoting:Waiting on query cache mutex
    查看>>
    mysql union orderby 无效
    查看>>
    mysql v$session_Oracle 进程查看v$session
    查看>>
    mysql VS mongoDB
    查看>>
    mysql vue 菜谱_Vue+MySQL实现购物车的增删改查
    查看>>
    mysql where中如何判断不为空
    查看>>
    mysql where中如何判断不为空
    查看>>
    MySQL Workbench 使用手册:从入门到精通
    查看>>
    MySQL Workbench 数据库建模详解:从设计到实践
    查看>>
    MySQL Workbench 数据建模全解析:从基础到实践
    查看>>
    mysql workbench6.3.5_MySQL Workbench
    查看>>
    MySQL Workbench安装教程以及菜单汉化
    查看>>
    MySQL Xtrabackup 安装、备份、恢复
    查看>>
    mysql [Err] 1436 - Thread stack overrun: 129464 bytes used of a 286720 byte stack, and 160000 bytes
    查看>>
    MySQL _ MySQL常用操作
    查看>>
    MySQL – 导出数据成csv
    查看>>
    MySQL —— 在CentOS9下安装MySQL
    查看>>
    MySQL —— 视图
    查看>>
    web项目 log4j2 指定配置文件路径
    查看>>
    mysql 不区分大小写
    查看>>