문제
N개의 숫자가 공백 없이 써 있다. 이숫자를 모두 합해 출력하는 프로그램 작성
입력
1번째 줄에 숫자의 개수 N(1 <= N <= 100), 2번째 줄에 숫자 N개가 공백 없이 주어진다
출력
입력으로 주어진 숫자 N개의 합을 출력
코드 작성
import java.util.Scanner;
public class MainClass {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt(); // 숫자의 개수
String inputNumber = scan.next(); // N개의 숫자
char [] numbers = inputNumber.toCharArray();
int result = 0;
for(char number : numbers) {
String temp = String.valueOf(number);
result += Integer.parseInt(temp);
}
System.out.println(result);
}
}
풀이(설명)
1. 입력을 받기위해 Scanner 클래스를 사용하여 "숫자의 개수, 공백 없이 주어진 N개의 숫자"를 입력을 받음.
2. N개의 숫자(inputNumber)를 String으로 받아 toCharArray() 함수를 사용하여 char 배열 numbers에 저장.
3. numbers 배열에 저장된 값들을 가져와 result에 중복 더하여 숫자의 합을 구함.
해당 문제는 배열과 형변환만 잘 활용하면 쉽게 풀수 있는 문제 입니다. 즉, String에 저장된 값을 char 배열 형태로 저장한 다음 배열에 있는 값들을 반복문을 사용하여 더해주면 되는데 이때 합을 구하기 위해 "String -> int"로 형변환을 한 다음 더해주는 방식으로 쉽게 풀 수 있습니다.
'기타 > Algorithm' 카테고리의 다른 글
[Algorithm] 투 포인터(Two Pointers) 알고리즘 (0) | 2025.03.02 |
---|---|
[Algorithm] 소수(Prime Number) 구하기 (0) | 2024.07.28 |