Coding Test/Programmers
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 96 - 하샤드 수)
dev-ini
2024. 5. 8. 17:00
728x90
# 문제
양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.
# 답안
// 1. 입력: 양의 정수 x
// 2. 출력: true, false
// sum = 0
// x를 문자열로 만들고, split으로 분리해서 배열로 만들고, ex) ['1', '0']
// 반복문 돌려서 숫자로 만들고 각 자리수를 sum에 더하기
//( x % sum === 0 ) ? true : false
function solution(x) {
let arr = x.toString().split('');
let sum = 0;
for(let i = 0; i < arr.length; i++){
sum += Number(arr[i])
}
return (x % sum === 0) ? true : false;
}
728x90