728x90
두 수 A 와 B 가 있을 때 A * B = 최소공배수(LCM) * 최대공약수(GCD) 이다.
최대공약수 : GCD (Greatest Common Divisor)
// 재귀적 사용법
function gcd(a, b){
if(b === 0){
return a;
}eles{
gcd(b, a % b);
}
}
// 반복문으로 작성한 방법
function gcd(a, b){
while( b > 0 ){
let temp = a;
a = b;
b = temp % b;
}
return a
}
최소공배수 : LCM (Least Common Multiple)
// A * B = 최소공배수(LCM) * 최대공약수(GCD) 를 이용하자면
// 최대공약수를 먼저 구한후 두 수의 곱을 최대공약수로 나누는 것이 좋다.
const A = 10;
const B = 5;
const LCM = A * B / gcd(A, B);
'TIL' 카테고리의 다른 글
[javascript] trim() (0) | 2023.02.27 |
---|---|
[javascript] Array.reverse() 사용하지 않고 배열 뒤집기 (0) | 2023.02.27 |
[javascript] 나눗셈 몫 구하기 , 소수점 올림/버림 (0) | 2023.02.27 |
[javascript] 소문자 대문자 만들기 (0) | 2023.02.21 |
TIL이란. (0) | 2022.03.17 |