文章目录

  • 一、循环求解
  • 二、辗转相除法
  • 三、找最小 i 值

一、循环求解

  • 首先两个数的最小公倍数一定大于两个数中较大的那个,且小于两数之积
  • 找出a与b之间的较大值max
  • 利用循环,令i=max,不断++,当i能同时整除a与b时,输出i,跳出循环
  • 即i为最小公倍数

代码如下:

#include <stdio.h>
int main() {int a, b;scanf("%d %d", &a, &b);int max = a > b ? a : b; //找出较大值int i = 0;for (i = max; i <= a*b; i++) {if (i%a == 0 && i%b == 0) {printf("%d\n", i);break;//跳出循环}}return 0;
}

二、辗转相除法

  • 以除数和余数反复做除法运算,当余数为 0 时,取当前算式除数为最大公约数

  • 两数乘积=最小公倍数*最大公约数

  • 通过辗转相除法求出最大公约数即求得最小公倍数

  • 图解举例:

代码如下:

#include<stdio.h>
int main() {int a, b;scanf("%d %d", &a, &b);int m = a * b;int r = 0;while (r = a % b) {//r为0时,跳出循环,此时b为最大公因数a = b;b = r;}printf("%d\n", m/b);//乘积除以最大公因数等于最小公倍数return 0;
}

三、找最小 i 值

  • 一定会有一个整数k能够使k/a=i,k/b=j;
  • a * i为整数表示k为a的倍数,k%b为0表示k为b的倍数,即(a * i)%b==0,此时a和b的公倍数为k,即a * i;
  • 要求最小公倍数即找出符合要求的最小的 i 值即可。

代码如下:

#include<stdio.h>
int main() {int a, b;scanf("%d %d", &a, &b);int i = 1;//i从1开始找while (a*i % b) {//(a*i)%b==0时为假,结束循环i++;}printf("%d\n", a*i);return 0;
}

【C语言初阶】求最小公倍数的三种方法相关推荐

  1. 求最小公倍数的三种方法(C语言)

    求最小公倍数的三种方法 1.常规暴力求解法 2.辗转相除法 3.迭乘法 //1.常规暴力求解法 #include <stdio.h> int main() {int a = 0;int b ...

  2. C语言求最小公倍数的三种方法

    第一种方法:累加法求 思路是,两个数字,要求他们的最小公倍数,那么这个最小公倍数,至少不要比这两个要求的数小.我们首先判断出两个数中较大的一个,然后判断这个数是否是要求的两个数的最小公倍数.如果不是, ...

  3. C语言求最大公约数三种方法详解

    C语言求最大公约数三种方法详解 题目要求 常用写法(穷举法) 辗转相减法 辗转相除法 main函数 整体代码 题目要求 运行最大公约数的常用算法,并进行程序的调式与测试. 常用写法(穷举法) 从两个数 ...

  4. java中隐函数求导法则_隐函数求导的三种方法

    this.p={ m:2, b:2, loftPermalink:'', id:'fks_085075084086088070081083074065081087082066093087080', b ...

  5. python求平方根的三种方法

    python求平方根的三种方法 题干描述 题目解答 题干描述 没啥好说的qwq,求根号下x,并舍弃小数部分,只保留整数 题目解答 方法一:不多bb,直接0.5次方(这应该是最没有营养的解法,面试官估计 ...

  6. 如何用计算机求最小公倍数的方法,快速求最小公倍数的四种方法(小学的题目额!) 假如用C求呢??...

    快速求最小公倍数的四种方法 最近,在教学国标本五年级下册关于求最小公倍数时,从学生反映的作业情况来看,学生还是很容易做错的,为此我总结出了四种如何求最小公倍数的方法. 如果两个数是互质数(即两数的最大 ...

  7. C语言(求最小公倍数的3种方法)

    想要解开这题目首先要了解什么是最小公倍数 最小公倍数:是指能同时被a和b整除的最小正整数 例如:14 和 6  的最小公倍数有 42 84 126 最小的数就是最小公倍数 假设:a=6  b=18 那 ...

  8. c语言程序π,C语言求圆周率π(三种方法)

    题目1) 利用公式①计求π的近似值,要求累加到最后一项小于10^(-6)为止. 题目2) 根据公式②,用前100项之积计算π的值. 题目1)提供了一种解法,题目2)提供了两种解法,请看解析. 题目1) ...

  9. c语言求圆周率 . 4,C语言求圆周率π(三种方法)(4页)-原创力文档

    C语言求圆周率π(三种方法) 题目1) 利用公式①计求π的近似值,要求累加到最后一项小于10^(-6)为止.题目2) 根据公式②,用前100项之积计算π的值.题目1)提供了一种解法,题目2)提供了两种 ...

最新文章

  1. Makefile和Shell学习笔记
  2. C#基础篇--文件(流)
  3. RedHat Enterprise Linux 5下配置Apache+Mysql+Php
  4. java思考笔记——遍历Map-key的几种方法
  5. java登录注册升级代码_【升级版】Java 登录,注册,传数据到后台小案例
  6. activemq消息持久化_将ActiveMQ持久消息传递性能提高25倍
  7. C语言正函数nosign,C语言标准库函数查询手册.docx
  8. java 并发编程框架
  9. 枚举进程ID并且获得进程路径
  10. 用treeview遍历文件夹(vb)
  11. Brownie Slicing(二分枚举答案)
  12. . mindoc linux amd64,搭建minDoc文件接口服务器
  13. rxj热血江hsf湖私服_如何使用RxJ进行React性思考和动画化移动对象
  14. 使用高德地图API实现历史轨迹查询
  15. 跨越“数字鸿沟”,日本老年智能化服务的解法
  16. 常见数学中的特殊符号
  17. 客快物流大数据项目(六十七):客户主题
  18. 20181103 Nginx(布尔教育)
  19. Cordova中第三方UI插件的使用(2)--Topcoat
  20. linux设置环境变量将动态库加入环境变量步骤

热门文章

  1. contiki笔记2-contiki的第一个程序
  2. pageadmin CMS网站制作教程:栏目单页内容如何修改
  3. 入门3D游戏建模,有哪些建模软件可以选择?
  4. 【数字电子技术 Digital Electronic Technology 2】—— 逻辑代数基础 之 逻辑函数以其描述方法解析
  5. 2022/5/1 Mybatis框架动态SQL
  6. 表示物体容量的量词有哪些?
  7. 微信小程序跳转公众号
  8. WinForm 窗体的边框
  9. [免费专栏] 车联网基础理论之车联网安全车端知识科普
  10. windows11家庭版安装hyperv-v