1. 程式人生 > >找出能被兩個給定參數和它們之間的連續數字整除的最小公倍數。 範圍是兩個數字構成的數組,兩個數字不一定按數字順序排序。

找出能被兩個給定參數和它們之間的連續數字整除的最小公倍數。 範圍是兩個數字構成的數組,兩個數字不一定按數字順序排序。

數字 g++ res tle 等於 param span 最小公倍數 推薦

function smallestCommons(arr) {

arr = arr.sort(); //從小到大排序

var result ; //結果

var judge = false; //判斷公倍數

var count = 0; //計數

for(var g=arr[1];g<400000;g++){ //從arr[1]開始遍歷判斷公倍數g,‘j<400000’可為空,直到無窮(不推薦)

for(var i=arr[0];i<=arr[1];i++){ //遍歷 給定參數arr之間的連續數字

if(g%arr[1] !== 0) break; //是否arr[1]的倍數,加快循環判斷

if(g%i !== 0) break; //是否i的倍數

else count++; //如果count等於參數之差,則j是所求的公倍數

if(count === arr[1]-arr[0]){

judge = true; result = g;

}

}

if(judge === true) break; //判斷g是公倍數,遍歷結束

else count = 0; //否則重新計數

}

return result;

}

smallestCommons([5,1]);

ps:搬磚......

找出能被兩個給定參數和它們之間的連續數字整除的最小公倍數。 範圍是兩個數字構成的數組,兩個數字不一定按數字順序排序。