본문 바로가기

프로그래머스/JavaScript

[프로그래머스 Javascript] Level1 하샤드 수

1. 자릿수의 합을 구한다. (문자로 전환 → 한글자씩 분리 → 자릿수의 합) 
2. 자릿수의 합으로 주어진 수가 나누어 떨어지는지 확인한다. 
3. 하샤드 수가 맞는지 결과를 출력한다. (나누어 떨어지면 하샤드 수이다.) 

1. for문을 이용하여 자릿수의 합 구하기  
function solution(x) {
    var answer = true;
    var n = 0;
    x = String(x);

    for(var i = 0; i < x.length; i++) {
        n += Number(x[i]);
    }

    answer = x % n == 0 ? true : false;

    return answer;
}


2. split과 reduce로 자릿수의 합 구하기
function solution(x) {
    var answer = true;    
    var n = String(x).split('').reduce((a, b) => Number(a) + Number(b));
    
    answer = x % n == 0 ? true : false;
    
    return answer;
}


##참고
split