정수 n이 주어질 때, 각 자릿수의 합을 반환하는 문제
n = 123 → 1 + 2 + 3 = 6
n = 987 → 9 + 8 + 7 = 24
n % 10 → 마지막 자리 수 추출n / 10 → 마지막 자리 수 제거n이 0이 될 때까지 반복한다.n = 123
1회: 123 % 10 = 3 → answer=3, n=12
2회: 12 % 10 = 2 → answer=5, n=1
3회: 1 % 10 = 1 → answer=6, n=0
n=0 → while 종료 → 6 반환
구체적으로 정리한 풀이 흐름:
n > 0인 동안 반복n % 10으로 마지막 자리 수 추출 후 answer에 누적n / 10으로 마지막 자리 수 제거n = 0이 되면 종료 후 반환public class Solution {
public int solution(int n) {
int answer = 0;
while (n > 0) {
answer += n % 10;
n = n / 10;
}
return answer;
}
}
