您的位置:首页 > 其它

算法基础练习--最大公约数和最小公倍数

2014-06-30 22:01 253 查看
var gcd = function (n1,n2){ //最大公约数
if(n1 == n2 ){return n1;}

var bigger = 0;
var smaller = 0;
if(n1 > n2){bigger = n1;smaller = n2;}
else {bigger = n2;smaller = n1;}

for(var j = 1; j <= smaller ; j++){
if(smaller%(smaller/j) != 0){continue;}
if(bigger % (smaller / j) == 0){return smaller/j;}
}

return undefined;
}

//最小公倍数
var lcm = function (n1,n2){
if(n1 == n2){return n1;}
var bigger = 0;
var smaller = 0;
if(n1 > n2){bigger = n1;smaller = n2;}
else {bigger = n2;smaller = n1;}

for(var i = 2; i <= bigger; i++){
if(i * smaller % bigger == 0){ return i * smaller;}
}
return undefined;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: