본문 바로가기
알고리즘 문제풀이/백준

백준 10951번 A+B-4 정답 코드

by 차누감 2024. 10. 12.
반응형

문제

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다.

각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)

출력

각 테스트 케이스마다 A+B를 출력한다.


문제 해결 방법

  1. 반복적으로 입력을 받습니다.
  2. 입력이 EOF에 도달할 때까지 두 정수를 입력받고 합을 출력합니다.
  3. Python에서는 input()이 더 이상 입력이 없을 때 예외가 발생하는 것을 활용할 수 있고, 다른 언어에서는 파일 종료 상태를 감지하는 방식을 사용할 수 있습니다.

1. Python (EOF 처리)

import sys

# sys.stdin.read를 사용하여 입력을 전부 읽고 처리
for line in sys.stdin:
    A, B = map(int, line.split())
    print(A + B)​

2. Java (EOF 처리)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        // 입력이 있을 때까지 반복
        while (sc.hasNextInt()) {
            int A = sc.nextInt();
            int B = sc.nextInt();
            System.out.println(A + B);
        }
        
        sc.close();
    }
}​

3. C++ (EOF 처리)

#include <iostream>
using namespace std;

int main() {
    int A, B;
    
    // 입력이 있을 때까지 반복
    while (cin >> A >> B) {
        cout << A + B << endl;
    }
    
    return 0;
}​

4. JavaScript (EOF 처리)

const readline = require('readline');
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const [A, B] = line.split(' ').map(Number);
    console.log(A + B);
});
 

5. C (EOF 처리)

#include <stdio.h>

int main() {
    int A, B;
    
    // 입력이 있을 때까지 반복
    while (scanf("%d %d", &A, &B) != EOF) {
        printf("%d\n", A + B);
    }

    return 0;
}
반응형

댓글