欧几里得算法又称辗转相除法,以余数和除数反复做运算,当余数为0时,取当前算式除数作为最大公约数。
原理如下:
解析:在这里提供了两个数字112和46,计算这两个数的最大公约数。
辗转相除法不仅可以用于计算两个数的最大公因数,也可以计算两个数的最大公倍数。最大公倍数也就是求出最大公因数后,用两个数的乘积除去一个最大公因数。
最大公倍数=数a * 数b / 最大公因数
辗转相除法代码如下:
注意:这里输入时最好进行判断,要使u>v才会有正确答案。
改进如下:
若要求最大公倍数,代码如下: