개발자 '쑥말고인절미'

[프로그래머스] JS 하샤드 수 본문

STUDY/코딩테스트

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

쑥말고인절미 2022. 8. 15. 20:45

문제


내 답안

function solution(x) {
    var answer = true;
    let sum = 0;
    
    for(let i = 0; i < x.toString().length; i++) {
        sum += Number(x.toString()[i]);
    }
    
    if(x % sum != 0) {
        answer = false;
    }
    
    return answer;
}

메모

하샤드 수라는걸 처음 들어봐서 당황스러웠는데 어려운 개념이 아니어서 금방 이해할 수 있었다. 배열이 아닌 문자열의 수를 어떻게 계산하는지 생각해본 적이 없어서 구글링을 통해 알았는데 이미 내가 다 알고있던 것이었다. 문자열을 숫자로 변환하는 방법도 써본적이 없어서 구글링해서 알았다.  흠... 기억해놔야겠다. 

아래는 친구가 작성한 소스이다. 허락받고 올린다! 확실히 같은 문제를 봐도 매번 다르게 작성하는게 신기하다.

function solution(x) {
    var answer = true;
    var sum = 0;
    var ex = x;
    
    while(ex > 0){
        sum = parseInt(sum + (ex % 10));
        ex = ex/10;
    }
    answer = x % sum == 0 ?true : false ;
    return answer;
}

참고링크

https://webisfree.com/2017-03-23/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EC%88%AB%EC%9E%90%EC%9D%98-%EC%9E%90%EB%A6%AC%EC%88%98%EB%A5%BC-%EA%B5%AC%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95%EC%9D%80

 

자바스크립트 숫자의 자리수를 구하는 방법은?

자바스크립트를 사용하여 숫자의 자리수(자릿수)를 구하려면 어떤 방법이 있을까요? 아래에서 숫자가 몇 자리인지를 구하는 방법을 알아봅니다.먼저 예를들어봅니다.

webisfree.com

https://codechacha.com/ko/javascript-convert-string-to-number/

 

JavaScript - 문자열을 숫자로 변환하는 방법

자바스크립트에서 문자열(String)을 숫자(Number)로 변환하는 다양한 방법을 소개합니다. Number()로 문자열을 숫자로 변환, `parseInt()`로 문자열을 숫자로 변환, parseFloat()로 문자열을 숫자로 변환, Math

codechacha.com