Algorithm/프로그래머스

[프로그래머스] Level1) 자릿수 더하기

햄습햄 2021. 10. 19. 00:54

문제 설명

 

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

 

 

제한 조건

 

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

 


풀이 과정 (자바)

 

입력받은 n을 자릿수마다 나눠 String형 배열 str에 넣었다.

그리고 for문을 돌려 str 배열에 있는 값을 int로 변환하고, answer에 더했다.

 

 

결과

 

 


다른 사람의 풀이

 

while문을 돌리면서 answer 값을 구했다.

n을 10으로 나눈 나머지를 넣어서 answer에 값을 더했다.

n 값이 10보다 작을 때 break해서 answer 값을 반환했다.

 

더보기

n 값이 123이라고 할 때, 

n = 123)

123 % 10 = 3

123 / 10 = 12 

 

n = 12)

12 % 10 = 2

12 / 10 = 1

 

n = 1)

1 % 10 = 1

 

n 값을 자릿수마다 출력해서 answer에 하나씩 더했다.

 

 

기타

 

10으로 나눠서 값을 구하는 방법을 배웠는데도 또 잊었다. 다른 사람의 풀이를 보니 저 방법이 있었다는 것을 뒤늦게 알았다. 좀 더 괜찮은 코드인 거 같은데 잊어버려서 쓰지 못했다. 다음에 잊지 않고 참고할 수 있었으면 좋겠다.