프로그래머스 하샤드 수 (javascript)

이진우·2022년 8월 5일
0

문제

풀이

function solution(x) {
    let answer = 0
    let splited = String(x).split("").map((value)=>parseInt(value))
    let allPlus = splited.forEach((i)=>answer+=i)
    
    return x % answer === 0 ? true :  false
}

풀이법

  1. 주어진 수를 나눠야 하기 때문에 문자열로 치환해서 숫자 한개씩 분리하고 다시 숫자로 바꾼후 변수에 담아준다.
  2. forEach문을 사용해 배열의 담긴 수를 모두 더해준다(x가 두자릿수가 아닐 경우가 있을 수 있기에 forEach문을 사용했다.)
  3. 마지막으로 주어진 수랑 나눠서 더한값과 비교후 Boolean을 리턴해준다.

다른사람들의 풀이

대게 reduce를 사용해 배열을 더하는 풀이가 많은데 아직까진 reduce를 정확하게 사용하긴 어려워서 나는 forEach문으로 풀어냈다....

혹은 for문으로 배열의 길이만큼 더해주는풀이도 있는데 굳이 for문을 안써도 단순반복으로 풀릴것 같아 사용하지 않았다

profile
초보개발자의 개발일기

0개의 댓글