본문 바로가기
알고리즘/프로그래머스

[C++] 자릿수 더하기(연습문제)

by 민-Zero 2020. 6. 17.

문제는 굉장히 간단하다. 주어진 자연수 N의 각 자릿수의 합을 구해서 반환하는 문제이다.

 

설계 및 구현

구현 내용은 앞서 진행한 파이썬과 비슷하게 수행하면 될것 같다. 단 파이썬에서 처럼 배열에 담지 않고 문자열로 변환한 자연수를 인덱스를 통해 더해 나가도록 한다.

① 자연수를 문자열로 변환

② 변환한 문자열을 인덱스 별로 다시 int로 변경하여 더한뒤 해당 값을 반환

① 주어진 자연수를 string 타입으로 변경하기 위해 string 헤더에 포함된 to_string 함수를 사용하였다.

② 문자열로 변경한 값을 정수형태로 더하기 위해 - '0' 을 수행하였는데 이는 0의 아스키코드값 48 을 활용하여 1~9 에 해당하는 아스키코드 49~57에서 빼면 아스키코드에 해당하는 1자리 자연수 값이 나오는것을 활용하여 각 자릿수의 합을 구하여 반환하였다.

위의 코드를 사용하여 무리없이 채점을 통과할 수 있었다. 

댓글