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

김택수·2022년 5월 22일
0

📄 문제 설명

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

❗ 해법찾기

  1. number타입의 input을 string타입으로 바꿔야한다는 것까진 접근가능했음.
  2. 문자열을 어떻게 나눌까가 고민이었는데 처음엔 charAt메서드를 통했음
  3. 어려움을 느끼고 검색 뒤 split메서드를 알게 되었음.

✏️ 풀이과정

split() : str.split("")으로 사용하면 각 문자를 나눠서 배열로 저장할 수 있음
1. nubmer타입의 input을 string타입으로 바꾸고 split을 통해 새로운 배열로 저장
2. +=연산자를 통해 0으로 초기화한 sum에 charr의 모든 인덱스를 number타입으로 누적하여 저장함
3. x를 sum으로 나눴을 때 나머지값이 0이면 하샤드 수, 0이 아니면 하샤드 수가 아니기 때문에 삼항연산자를 통해 true와 false를 return

profile
개발자 키우기 Lv1

0개의 댓글