3個或更多數字的最小公倍數如何計算多個數字的最小公倍數?到目前為止,我只能在兩個數字之間進行計算。但不知道如何擴展它來計算3個或更多數字。到目前為止,這就是我做到的LCM = num1 * num2 / gcd ( num1 , num2 )使用gcd是計算數字的最大公約數的函數。使用歐幾里得算法但我無法弄清楚如何計算3個或更多數字。
3 回答

阿波羅的戰車
TA貢獻1862條經驗 獲得超6個贊
這是一個ECMA風格的實現:
function gcd(a, b){ // Euclidean algorithm var t; while (b != 0){ t = b; b = a % b; a = t; } return a;}function lcm(a, b){ return (a * b / gcd(a, b));}function lcmm(args){ // Recursively iterate through pairs of arguments // i.e. lcm(args[0], lcm(args[1], lcm(args[2], args[3]))) if(args.length == 2){ return lcm(args[0], args[1]); } else { var arg0 = args[0]; args.shift(); return lcm(arg0, lcmm(args)); }}
添加回答
舉報
0/150
提交
取消