Great Common Divisor
const getGCD = (n1, n2) => {
for (let gcd = 2; gcd <= Math.min(n1, n2); gcd++) {
if (n1 % gcd === 0 && n2 % gcd === 0) return gcd;
}
return 1;
}
least common multiple
const getLCM = (n1, n2) => {
let lcm = 1;
while (true) {
if ((lcm % n1 === 0) && (lcm % n2 === 0)) return lcm;
lcm++;
}
}
👇 예시
gcd(192,78) = gcd(78,36) = gcd(36,6) = gcd(6,0) = 6
function solution(num1, num2) {
const gcd = (a, b) => a % b === 0 ? b : gcd(b, a % b);
const lcm = (a, b) => a * b / gcd(a, b);
return [gcd(num1, num2), lcm(num1, num2)];
}