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

[BOJ/백준] 10951번 A + B - 4 - [c/c++] 풀이

by 미니상미니 2022. 10. 11.
반응형

https://www.acmicpc.net/problem/10951

 

10951번: A+B - 4

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

www.acmicpc.net

 

 

 

 


  • 문제

단계별로 풀어보기 - 반복문 - [12단계] 10951번


해설

c - scanf 함수의 경우 서식지정자 개수 즉 읽은 데이터의 개수에 따른 반환 값이 존재한다.

 

만약 scanf("%d %d", &a, &b);의 경우 서식지정자 %d가 2개 즉 int 데이터를 2개 받았으므로 2를 반환한다.

만약 데이터를 읽다가 파일의 끝에 도달할 경우 scanf 함수는 -1을 반환한다.

 

따라서 while문 조건식을 파일의 끝일 때까지 즉 scanf("%d %d", &a, &b) != -1 로 설정한다.

 

c++ - cin은 데이터를 읽은 후 스트림 객체를 반환하지만 조건문 안에 있는 경우 bool 타입으로 바뀌어 true, false를 반환한다.

cin이 데이터를 읽는 과정에서 실패하면 false, 성공하면 true를 반환하기 때문에

while문 조건식을 cin >> a >> b로 설정한다.

코드

c

#include <stdio.h>


int main() {

	int a, b;

	while (scanf("%d %d", &a, &b) != -1) {
		printf("%d \n", a + b);
	}

	return 0;
}

 

c++

#include <iostream>

using namespace std;

int main() {

	int a, b;

	while (cin >> a >> b) {
		cout << a + b << '\n';
	}

	return 0;
}

 

 

 

 

 

반응형

댓글