|
Ke C++程序设计实践 (9)
【题目】求两个整数a,b的最大公约数与最小公倍数
要求:先分析题目,再写出算法,最后编写程序实现。
提示:
(1)最大公约数是指两个整数a,b共同的约数(能整除)中最大者。该题关键就是找两个数的公约数,然后求得其中的最大者。
(2最大公约数不会大于两个数中的最小数。所以需要找出两个数中的最小数。
(3)如何求得两个数的公约数,判断条件是什么?都能被二者整除的数就为二者得公约数。
(4)二者的约数将会有多个,如何找到最大者?采用循环的方法求得。
(5)两个整数的最小公倍数与最大公约数有如下简单关系:
最小公倍数=a*b / 最大公约数
因而由求得的最大公约数即可根据上式求得最小公倍数。 |
|