본문 바로가기

카테고리 없음

[백준 BAEKJOON / 자바 JAVA] 14681번 : 사분면 고르기

Q) BAEKJOON / JAVA / 14681 : 사분면 고르기

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

 

14681번: 사분면 고르기

점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다.

www.acmicpc.net


※ if 조건문

 - 가장 기본적인 조건문 이며, 조건에 따라 코드의 실행 흐름을 다르게 동작하도록 제어하는 문장입니다.

if(조건문 1) {
	실행문 1;	//조건문 1이 true일 때 실행
}else if(조건문 2) {
	실행문 2;	//조건문 2가 true일 때 실행
}else {
	실행문 3;	//조건문 1과 2가 false일 때 실행
}

 

※ 삼항연산자

 - 조건식의 true / false에 따라 반환 값을 달리하며, 중첩사용 또한 가능합니다.

조건식 ? true 반환 값 : false 반환 값

 

A)

 - [1] Scanner

import java.util.Scanner;

public class Main {
	public static void main(String args[]) {
		
		//스캐너 선언
		Scanner	sc = new Scanner(System.in);
		
		//nextInt() 활용 정수형으로 저장
		int x = sc.nextInt();
		int y = sc.nextInt();
		
		//if 조건문
		//1) x의 양·음수 여부
		//2) y의 양·음수 여부
		//출력
		if(x > 0) {
			if(y > 0) {
				System.out.println("1");
			}else if(y < 0){
				System.out.println("4");
			}
		}else if(x < 0) {
			if(y > 0) {
				System.out.println("2");
			}else if(y < 0){
				System.out.println("3");
			}
		}
		
		//스캐너 종료
		sc.close();
		
	}
	
}

 

 - [2] BufferedReader

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public static void main(String args[]) throws IOException {
		
		//BufferedReader 선언
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		//readLine()로 행 읽어오기
		//parseInt로 정수형으로 변환
		int x = Integer.parseInt(br.readLine());
		int y = Integer.parseInt(br.readLine());
		
		//삼항연산자 사용
		String Quadrant = (x > 0) ? (y > 0) ? "1" : "4" : (y > 0) ? "2" : "3";
	
		//출력
		System.out.println(Quadrant);
	}
	
}