[프로그래머스] 하샤드 수 - JS

### 문제

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.

입출력 예

arr return
10 true
12 true
11 false
13 false

풀이

function solution(x) {
    var answer = true;
    // 입력받은 양의 정수를 문자로 저장
    let input = x.toString().split('');
    let result = 0;

    for(let i=0; i<input.length; i++) {
    // parseInt를 사용하여 문자롤 저장한 값은 정수로 변환
        result += parseInt(input[i],10);
    }
	// 하샤드 수 조건
    if(x % result === 0) {
        return answer;
    } else {
        return false;
    }
}

좋은 웹페이지 즐겨찾기