如何求最小公倍数.pdf
《如何求最小公倍数.pdf》由会员分享,可在线阅读,更多相关《如何求最小公倍数.pdf(3页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如何求最小公倍数 求任意两个正整数的最小公倍数(LCM)。问题分析 最小公倍数(Least Common Multiple,LCM),如果有一个自然数 a 能被自然数 b 整除,则称 a 为 b 的倍数,b 为 a 的约数,对于两个整数来说,指该两数共有倍数中最小的一个。计算最小公倍数时,通常会借助最大公约数来辅助计算。最小公倍数=两数的乘积/最大公约(因)数,解题时要避免和最大公约(因)数问题混淆。对于最小公倍数的求解,除了使用最大公倍数,还可以根据定义设计算法。求任意两个正整数的最小公倍数,即求能同时被两个整数整除的最小自然数。算法设计 对于输入的两个正整数 m 和 n 每次输入的大小顺序
2、可能不同,为了使程序具有一般性,首先对整数所 m 和 n 进行大小排序,规定变量 m 中存储大数、变量 n 中存储小数。输入的两个数,大数 m 是小数 n 的倍数,那么大数 m 即为所求的最小公倍数;若大数 m 不能被小数 n 整除则需要寻找一个能同时被两数整除的自然数。从大数 m 开始依次向后递增直到找到第一个能同时被两数整除的数为止,所以循环变量 i 的初值为寻找第一个能同时被两整数整除的自然数,并将其输出。需要注意的是,在找到第一个满足条件的 i 值后,循环没必要继续下去,所以用 break 来结束循环。在上面的分析过程中没有提到循环变量的终止条件,因 i 的最大值不能确定,像这种终止条
3、件不确定的情况如何来表示?方法有两种,第一,可以把判定条件表示成循环变量满足的基本条件,如本例终止条件可表示成 i0;第二,终止条件省略不写,利用循环体中的语句结束循环,如在找到第一个满足条件的自然数时利用 break 语句结束循环。下面是完整的代码:#include int main()int m,n,temp,i;printf(Input m&n:);scanf(%d%d,&m,&n);if(m0;i+)/*从大数开始寻找满足条件的自然数*/if(i%m=0&i%n=0)/*输出满足条件的自然数并结束循环*/printf(The LCW of%d and%d is:%dn,m,n,i);break;return 0;运行结果:Input m&n:6 24 The LCW of 24 and 6 is:24
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 最小公倍数
限制150内