본문 바로가기

코딩테스트

자바스크립트(JS) 약수 / 프로그래머스 - 약수의 합

프로그래머스 코딩 기본문제를 풀다가 , 나머지를 활용해 홀수인지 짝수인지를 구하는 문제다음으로

약수의 합을 구하는 문제를 만났다...

약수 ? 일단 약수의 뜻부터 막히고 ,,, (부끄)

약수의 뜻부터 정리하고, 문제풀이를 해보려고 한다

 

 

* 약수 *

약수는 어떠한 수로 나누었을때 나누어 떨어지는 경우 (나머지가 없는 경우) 그 수가 나눈수의 약수라고 한다.

위의 나눗셈 식에서도 8을 1,2,4,8 로 나누었을 때 각각 나누어 떨어지는 것을 확인할 수 있다.

즉, 1,2,4,8은 8의 약수라고 할수 있다.

 

여기서 이제 약수 찾는 코딩을 하기 위해서는 나머지가 0이 되어야 한다는 점..!!

처음 딱 든 생각은 If 문으로 조건의 나머지가 0으로 판단을 해주면 되겠다..!! 라고 생각이 들었음 !

 

나는 프로그래머스 - 약수의합 문제를 요렇게 엄청 평범하게 풀었다 !

function solution(n) {
    var answer = 0;
    for (var i = 1; i <= n; i++) {
        if (n % i == 0) {
            answer += i;
        }
    }
    return answer;
}