프로그래머스 (JS)/Lv. 0

[Programmers] 120808번 - 분수의 덧셈

hodo- 2023. 2. 20. 14:22

Problem

문제 보기

첫 번째 분수의 분자와 분모를 뜻하는 numer1, denom1, 두 번째 분수의 분자와 분모를 뜻하는 numer2, denom2가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요

Solution

function solution(numer1, denom1, numer2, denom2) {
    const a = (numer1 * denom2) + (numer2 * denom1)
    const b = denom1 * denom2;
    let count = 1;
    
    for(let i = 1; i <= b; i++){
        if(a%i === 0 && b%i ===0){
            count = i;        
        }
    }
    return [a/count, b/count];
}

1. 위의 사진대로 통분
2. 더이상 나눠지지 않을 때까지 나눠주기 위해 for문을 사용하여 경우의 수 계