본문 바로가기
알고리즘 공부

프로그래머스 1단계 - 하샤드 수

by 코딩 냠냠 2022. 11. 3.
728x90
반응형

하샤드 수


문제 설명

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

제한 조건

🎃x는 1 이상, 10000 이하인 정수입니다.

입출력 예시

arr return
10 true
12 true
11 false
13 false

🎃내가 한 풀이

숫자를 문자로 만들어서 split()를 사용해서 나눠준 뒤 Number를 이용해 다시 숫자로 변환 후 삼항연산자를 사용해서 반환하였다...

const x = 10;
function solution(x) {
    let answer = 0;
    const arr = String(x).split("");
    for(let i = 0; i < arr.length; i++){
        answer += Number(arr[i]);
    }
    return (x % answer == 0) ? true : false;
}

🎃다른 풀이

세상은 넓고 멋진사람들은 많다...!

function Harshad(n){
    return !(n % (n + "").split("").reduce((a, b) => +b + +a ));
    }

댓글


자바스크립트

Javascript

자세히 보기
html
css
광고 준비중입니다.
<