Archives
Recent Posts
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
관리 메뉴

개발도생's Blog

[백준][Java] 9772_Quadrants 본문

BaekJoon

[백준][Java] 9772_Quadrants

개발도생 2023. 4. 11. 15:54

[백준] 9772_Quadrants 

 

9772번: Quadrants

Given the coordinates (x,y) of some points in 2-dimensional plane, find out which quadrant(Q1-Q4) the points are located. If a point is located on X-axis or Y-axis, print out AXIS instead.

www.acmicpc.net


 


x, y의 값이 주어졌을 때 좌표 어디에 점이 찍히는지 물어보는 문제이다.

 

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


public class Main {
	public static void main(String[] args) throws IOException{

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;
		
		while(true) {
			st = new StringTokenizer(br.readLine());
			double X = Double.parseDouble(st.nextToken());
			double Y = Double.parseDouble(st.nextToken());
			
			if(X > 0 && Y > 0) {
				System.out.println("Q1");
			} else if(X < 0 && Y < 0) {
				System.out.println("Q3");
			} else if(X < 0 && Y > 0) {
				System.out.println("Q2");
			} else if(X > 0 && Y < 0) {
				System.out.println("Q4");
			} else if(X == 0 && Y == 0){
				System.out.println("AXIS");
				break;
			} else {
				System.out.println("AXIS");
				
			}
		}
	}
}

우선 사용자 입력 값을 통해 X, Y의 값을 받아오기 때문에 BufferedReader Class를 사용했다.

 

[Java][Class] Bufferedreader

코딩 테스트 문제들을 풀다가 우연히 알게 된 Bufferedreader 객에 대해서 공부해봤다. Bufferedreader Class는, 이름과 같이 버퍼를 사용하는 클래스다. 일반적으로 알고 있던 Scanner Class는 사용자가 값을

nan-o-nuel-do.tistory.com

값과 값 사이에는 공백이 존재하기 때문에 공백을 통해 구분을 해줄 수 있는 StringTokenizer Class도 활용했다. 

 

[Java][Class] StringTokenizer

평소 유용하게 사용하고 있는 객체 StringTokenizer를 공부해봤다. StringTokenizer Class는, 단순하게 표현한다면 문자들을 토큰화 시켜준다고 이해하면 편할 것 같다. 토큰으로 분리된 문자들을 StringToken

nan-o-nuel-do.tistory.com

 

while 반복문 내부에 Stringtokenizer 인스턴스를 활용해 입력 값에 공백을 통해 나눠주고,

 

분리된 값은 실수 타입의 변수에 Double.parseDouble Method로 형 변환 시켜 저장해 주었다.

 

X, Y의 값을 통해 if 조건문으로 좌표 어디에 점이 찍히게 되는지 설정해 주고,

 

입력 값이 0, 0이 되면 반복문이 종료되도록 해주면 된다.



위와 같은 코드로 제출했을 때,

맞았습니다!!

'BaekJoon' 카테고리의 다른 글

[백준][Java] 1284_집 주소  (1) 2023.04.21
[백준][Java] 10480_Oddities  (0) 2023.04.13
[백준][Java] 6887_Squares  (0) 2023.03.31
[백준][Java] 6825_Body Mass Index  (0) 2023.03.28
[백준][Java] 5358_Football Team  (0) 2023.03.20
Comments