Post

하샤드 수

https://school.programmers.co.kr/learn/courses/30/lessons/12947

📔 문제 설명

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

💡 입출력 예

xresult
10true
12true
11false
13false

💻내가 작성한 코드

1
2
3
4
5
6
7
8
9
function solution(x) {
  const numArr = x
    .toString()
    .split("")
    .map((n) => Number(n));
  const sum = numArr.reduce((acc, cur) => (acc += cur), 0);

  return x % sum === 0;
}
This post is licensed under CC BY 4.0 by the author.