숫자의 합(11720)

정수를 문자열로 입력받는 문제

문제

N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

출력

입력으로 주어진 숫자 N개의 합을 출력한다.

예제 입력

1
1

예제 출력

1

예제 입력2

5
54321

예제 출력2

15

예제 입력3

25
7000000000000000000000000

예제 출력3

7
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        String tmp = sc.next();
        int sum = 0;
        for(int i=0; i<n; i++){
            sum += Integer.parseInt(String.valueOf(tmp.charAt(i)));
        }
        System.out.println(sum);
    }
}

처음으로 입력받을만큼의 숫자를 입력받고

공백없이 입력받기 때문에 String으로 입력받은 다음, charAt()을 이용했음

charAt을 사용하면 char값이 나옴

그런데 Integer.parseInt에서는 string값을 int로 변환하는 것 밖에 없으니까

일단 String.valueOf()안에 charAt값을 넣어서 String으로 변환한 다음, 그리고 Integer.parseInt()안에 그 값을 넣어주면 정상적으로 char값을 int으로 변환하는 것이 가능하다

Last updated

Was this helpful?