1. 문제
흔한 수학 문제 중 하나는 주어진 점이 어느 사분면에 속하는지 알아내는 것이다.

사분면은 아래 그림처럼 1부터 4까지 번호를 갖는다. "Quadrant n"은 "제n사분면"이라는 뜻이다.
예를 들어, 좌표가 (12, 5)인 점 A는 x좌표와 y좌표가 모두 양수이므로 제1사분면에 속한다.
점 B는 x좌표가 음수이고 y좌표가 양수이므로 제2사분면에 속한다.
점의 좌표를 입력받아 그 점이 어느 사분면에 속하는지 알아내는 프로그램을 작성하시오.
단, x좌표와 y좌표는 모두 양수나 음수라고 가정한다.
https://www.acmicpc.net/problem/14681
14681번: 사분면 고르기
점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다.
www.acmicpc.net
2. 코드
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int A = scan.nextInt(); int B = scan.nextInt(); scan.close(); if (A > 0 && B > 0) System.out.print(1); else if (A > 0 && B < 0) System.out.print(4); else if (A < 0 && B < 0) System.out.print(3); else System.out.print(2); } }
3. 풀이
Scanner scan = new Scanner(System.in); int A = scan.nextInt(); int B = scan.nextInt(); scan.close();
일단 두 개의 숫자를 입력할 수 있도록 만들어줘야 한다.
scan을 이용해 변수 A와 B에 입력된 값이 저장되도록 했다.
if (A > 0 && B > 0) //양수, 양수 = 1사분면 System.out.print(1); else if (A > 0 && B < 0) // 양수, 음수 = 4사분면 System.out.print(4); else if (A < 0 && B < 0) //음수, 음수 = 3사분면 System.out.print(3); else //양수, 음수 = 2사분면 System.out.print(2);
이제 입력된 두 숫자가 양수인지 음수인지에 따라 1사분면부터 4사분면으로 나뉜다.
1사분면은 입력된 두 숫자가 양수(+)여야 한다.
2사분면은 첫 번째로 입력된 숫자는 음수(-)고, 두 번재로 입력된 숫자는 양수(+)여야 한다.
3사분면은 첫 번째로 입력된 숫자는 음수(-)고, 두 번째로 입력된 숫자도 음수(-)여야 한다.
4사분면은 첫 번째로 입력된 숫자는 양수(+)고, 두 번째로 입력된 숫자는 음수(-)여야 한다.
만약 내가 첫 번째로 12를 입력하고,
두 번째로 -5를 입력했다면 (12, -4)는 4사분면에 해당하기에
출력값으로 4가 나와야 한다.
'IT > BaekJoon' 카테고리의 다른 글
[백준/JAVA] 2480 주사위 세개 (0) | 2023.03.05 |
---|---|
[백준/JAVA] 2525 오븐 시계 (0) | 2023.02.26 |
[백준/JAVA] 2753 - 윤년 : 그래서 윤년이 뭘까? (0) | 2023.01.15 |
[백준/JAVA] 9498 - 시험성적 (0) | 2023.01.14 |
[백준/JAVA] 1330번 - 두 수 비교하기 (0) | 2023.01.08 |