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

프로그래머스 1단계 - 자릿수 더하기

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

자릿수 더하기


문제 설명

자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.

제한 조건

🎉N의 범위 : 100,000,000 이하의 자연수

입출력 예시

N answer
123 6
987 24

🎉내가 한 풀이

검색을 해보니 parseInt()라는 문자열을 정수로 변환시켜주는 방법이 있어서 사용해 보았다...!

const n = 123;
function solution(n)
{
    let answer = n.toString().split('').map(el => parseInt(el));
    
    return answer.reduce((p, c) => p + c);
}

🎉다른 풀이

n+" "가 무엇인지 몰랐는데 어떤 친절한 분이 설명을 해놓으셨다...

자바스크립트에서 덧셈 연산자 +를 사용할 때, 피연산자 중 어느 하나가 문자열이면 문자열이 아닌 다른 피연산자도 문자열로 타입이 변환되어 문자열을 합친 값이 반환된다. 위의 예시에서 n+""은 숫자 + 문자열의 형태이기 때문에 결과적으로 문자열 n을 반환. 참고로 ""은 빈문자열이기 때문에 연결해도 반환값에 영향을 주지 않는다. 그저 다른 피연산자를 문자열로 형변환하는 역할. 따라서 String(n)과 동일하게 사용 가능.
라는 설명이 있었다...!

function solution(n){
    // 쉬운방법
    return (n+"").split("").reduce((acc, curr) => acc + parseInt(curr), 0)
}

댓글


자바스크립트

Javascript

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