import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String T  =  sc.next();
        int sum = 0;
        for(int test_case=0;test_case<T.length();test_case++){
            sum  += T.charAt(test_case) - '0';
        }
        System.out.println(sum);
    }
}

 

각 입력받은 숫자들의 자리수 별로 합을 구한다.

예를들어 5624면 5 + 6 + 2 + 4 인 17이된다.

입력을 숫자가 아닌 문자열로 받으면

'0'은 0의 아스키코드인 48

'1'은 1의 아스키코드인 49

...

이렇게 실제 수보다 48 이 크게나오므로

 

공통된 48인 '0'을 빼주며

각 자리를 반복문을 통해 더해준다.

'Study > ' 카테고리의 다른 글

[Java] StringBuilder  (0) 2025.11.20
[Java] Integer.parseInt(String.substring(num1,num2)) + String.format("%02d", num)  (0) 2025.11.18
[Java] Array.sort()  (0) 2025.11.17
[Java] Integer.MIN_VALUE  (0) 2025.11.16
[Tip] 맥 SVN 설치 - snailSVN  (0) 2024.07.21

 


 

 

처음에 테스트 케이스를 받아야하므로 정수형을 입력받아야한다.

그리고 나서 버퍼를 지워야하기 위해 nextLine을 사용

 

 

처음에 charAt을 사용해서 Hello라는 문구를 넣었을 때

숫자로 나왔다.

아스키 코드인 H(72) 와 o(111)의 합이 183이기 때문

 

그래서 찾아보니 문자열을 더하기 위해선 앞에 " " 를 붙여줘야 한다.

 

 

 

 

import java.util.Scanner;

public class num9086 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int T = sc.nextInt();
        sc.nextLine();

        for(int i = 0; i < T; i++){
            String str = sc.nextLine();
            System.out.println("" + str.charAt(0) + str.charAt(str.length() - 1));
        }
    }
}

'Java > 백준을 풀며' 카테고리의 다른 글

repeat(num)  (0) 2025.09.05
BigInteger  (1) 2025.08.28

+ Recent posts