1.最大公约数
首先你要知道数学上怎么求最大公约数,我就不知道,太尴尬了,老师只教过比较约数。。。。
数学上求最大公约数的方法是“辗转相除法”,就是用一个数除以另一个数(不需要知道大小),取余数,再用被除数除以余数再取余,再用新的被除数除以新的余数再取余,直到余数为0,最后的被除数就是最大公约数
知道了这些,代码就简单了
function gcd( n, m ){ if( m == 0 ) return n; return gcd( m, n % m ); } gcd(12,30) // 6
2.最小公倍数
首先要知道最小公倍数和最大公约数的关系:最小公倍数=两数相乘再除以最大公约数
所以知道了最大公约数,最小公倍数代码不用上了吧