코딩 테스트(Coding Test)/프로그래머스

[프로그래머스] 자릿수 더하기 - 자바(Java)

잇트루 2023. 1. 15. 00:00
반응형

문제

https://school.programmers.co.kr/learn/courses/30/lessons/12931

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 설명

자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.

예를 들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.

 

 

제한 조건

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

 

입출력 예

n return
123 6
987 24

 

코드

방법 1)

public class Solution {
    public int solution(int n) {
        int answer = 0;
        
        while (n != 0) {
            answer += n % 10;
            n /= 10;
        }

        return answer;
    }
}
  1. answer의 값에 입력 값 n을 10으로 나눈 나머지를 더한다.
  2. n을 10으로 나눈다.

 

방법 2)

public class Solution {
    public int solution(int n) {
        int answer = 0;
        String str = String.valueOf(n);
        
        for (int i = 0; i < str.length(); i++) {
            answer += str.charAt(i) - '0';
        }

        return answer;
    }
}
  1. 입력 값 n을 String 타입으로 변환한다.
  2. answer에 각 자릿수를 char 타입으로 변환하고 '0'을 뺀 값을 더한다.(아스키코드 참고)
반응형