컴공댕이 공부일지
[java] 백준 ( 10950, 10951, 10952 A+B ) ★EOP 본문
728x90
#1. 10950 A+B - 3
브론즈 5
https://www.acmicpc.net/problem/10950
10950번: A+B - 3
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
새싹 문제 다운 정말 간단한 문제. 두 수의 합을 테스트 케이스만큼 출력.
정답 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int t = s.nextInt();
for(int i=0; i<t; i++) {
int a = s.nextInt();
int b = s.nextInt();
System.out.println(a+b);
}
}
}
#2. 10950 A+B - 4
브론즈 5
https://www.acmicpc.net/problem/10951
10951번: A+B - 4
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
문제 자체는 쉽다. 입력받은 두 수 묶음의 합을 모두 출력하는 것이다.
문제는 단순히 테스트케이스가 입력되지 않는다.
그래서 몇 묶음이나 입력될 지를 모른다. 그냥 입력이 끝나면 끝인 것이다...ㅎ
그래서 EOP 개념이 등장한다.
★EOP
hasNextLine() 메서드를 활용했다.
다음에 읽을 값이 있는지 확인하는 Boolean 타입의 메소드로 값이 있으면 True를 반환한다.
계산해야하는 숫자 묶음이 한 줄에 다 입력되므로 nextLine()으로 읽어서
공백과 엔터를 빼고 0번, 2번 인덱스에 입력되는 숫자만 뽑아 int로 형변환하여 계산하였다.
정답코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String temp = null;
while(s.hasNextLine()) {
temp = s.nextLine();
System.out.println((int)temp.charAt(0)+(int)temp.charAt(2)-96);
}
}
}
#3. 10952 A+B - 5
브론즈 5
https://www.acmicpc.net/problem/10952
10952번: A+B - 5
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
이것 역시 쉽다. 테스트 케이스는 주어지지 않지만
0이 두 번 입력되면 루프를 멈추면 된다.
그냥 스캐너로 입력받고 입력 받은 값이 모두 0이면 반복문을 빠져나온다.
정답 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
while(true) {
int a = s.nextInt();
int b = s.nextInt();
if(a+b==0) {
break;
}
System.out.println(a+b);
}
}
}
728x90
'문제 풀이 > 코딩 문제 풀이 모음' 카테고리의 다른 글
[java] 백준 ( 2869 달팽이는 올라가고 싶다 ) (0) | 2023.04.18 |
---|---|
[java] 백준 ( 1157 단어공부 ) 아스키 코드 활용 (0) | 2023.04.07 |
[java] 백준 ( 2477 참외밭 ) 💥💦 (0) | 2023.04.05 |
[java] 백준 ( 13458 시험 감독 ) (0) | 2023.03.30 |
[java] 백준 ( 13015 별 찍기-23 ) (0) | 2023.03.24 |
Comments