반응형
자릿수 더하기
문제 설명
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를 들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
예시
n | return |
123 | 6 |
987 | 24 |
코드 해석 및 전체 코드
알고리즘
1. num(= n)이 0이 아닐 때까지 while문 반복2. answer에 num을 10으로 나누었을 때의 나머지 값 넣기3. num / 10
1. num(= n)이 0이 아닐 때까지 while문 반복
n으로 초기화한 int 타입의 num 선언하여 num을 계속 10으로 나누고 0이 되면 더 이상 나눌 10으로 나눌 수 없다는 것을 의미하므로 0이 아닐 때까지 반복한다.
2. answer에 num을 10으로 나누었을 때의 나머지값 넣기
num을 10으로 나누었을 때 나머지값은 num의 1의 자릿수와 같기 때문에 answer에 더한다.
다음 1의 자릿수를 더하기 위해 num을 10으로 나눈다.
import java.util.*;
public class Solution {
public int solution(int n) {
int answer = 0;
int num = n;
while(num != 0){
answer += num % 10;
num /= 10;
}
return answer;
}
}
속도
반응형
'코딩 테스트 > [JAVA] programmers 코딩 테스트 연습' 카테고리의 다른 글
[Programmers/JAVA] 정수 제곱근 판별 / 프로그래머스 코딩 테스트 연습 (0) | 2021.06.11 |
---|---|
[No.18] 자연수 뒤집어 배열로 만들기/ 프로그래머스 코딩 테스트 연습 JAVA (0) | 2021.06.10 |
[No.16] 이상한 문자 만들기/ 프로그래머스 코딩 테스트 연습 JAVA (0) | 2021.06.09 |
[No.15] 약수의 합 / 프로그래머스 코딩 테스트 연습 JAVA (0) | 2021.06.09 |
[No.14] 문자열을 정수로 바꾸기 / 프로그래머스 코딩 테스트 연습 JAVA (0) | 2021.06.08 |
댓글