[JS알고리즘_10] 하샤드 수

이강윤·2022년 7월 5일
0

JS알고리즘

목록 보기
10/28
post-thumbnail

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


풀이

function solution(x) {
    let sum = 0
    x.toString().split('').map((item) => sum += Number(item))
    return (x % sum === 0) ? true : false
}
  1. 매개변수를 나눠서 합을 더해야하기 때문에 먼저 타입을 문자로 변경하고 그 문자를 나눈다. => x.toString().split('')
  2. 그 문자열을 map메소드를 통해 돌려 자리수의 합을 나타낸다. => sum
  3. x % sum이 나누어 떨어지면 true, 아니면 false를 return한다.
profile
멋진 FE개발자가 될거야 ✌

0개의 댓글