[백준 BOJ] 14681번 사분면 고르기 (C++/cpp)

2022. 3. 26. 22:14PS (Program Solving)/BOJ (백준)

문제 설명

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

 

14681번: 사분면 고르기

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

www.acmicpc.net

백준 BOJ 14681번 사분면 고르기 문제 사진

 

접근 방법 - 기본적인 수학적 사고력 문제

백준의 14681번 문제는 기본적인 수학적 사고력을 요구하는 문제이다.

해당 문제는, 입력받은 x좌표와 y좌표의 값을 통해 해당 점이 어느 사분면에 속해 있는지를 출력해야 하는 문제이다.

(사분면에 대한 설명은 위 문제의 설명을 참고해주길 바란다.)

언어의 기본적인 문법을 잘 인지하고 있으며 사분면에 대해 제대로 이해하고 있다면 쉽게 풀 수 있는 문제이다.

두 좌표값이 음수인지 양수인지를 잘 판별할 수 있다면 어렵지 않으니 이 점을 참고하길 바란다.

필자는 아래의 순서대로 코드를 작성하여 문제를 해결하였다.

 

코드의 실행 순서

1) x좌표(x)와 y좌표(y)를 순서대로 입력받는다.

 

2) 위에서 입력받은 값을 아래처럼 판별하여 출력한다.

- x, y 모두 양수라면 이 점은 제 1사분면에 위치한다. 따라서, 1을 출력한다.

- x가 음수이며 y가 양수라면 이 점은 제 2사분면에 위치한다. 따라서, 2를 출력한다.

- x, y 모두 음수라면 이 점은 제 3사분면에 위치한다. 따라서, 3을 출력한다.

- 위 3가지가 모두 아니라면 이 점은 제 4사분면에 위치한다. 따라서, 4를 출력한다.

 

3) 출력이 끝났다면 실행 종료한다.

반응형

 

성공한 코드

#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable: 4996)
#include <iostream>
#define endl '\n'
using namespace std;

//백준 14681번 코드
int main() {
	ios::sync_with_stdio(false);
	cin.tie(NULL);	cout.tie(NULL);

	int x, y;
	cin >> x >> y;
	if (x > 0 && y > 0) { cout << 1 << endl; }
	else if (x < 0 && y>0) { cout << 2 << endl; }
	else if (x < 0 && y < 0) { cout << 3 << endl; }
	else { cout << 4 << endl; }
}

 

제출 결과

백준 BOJ 14681번 사분면 고르기 문제 C++ 제출 결과

(2022.03.23 백준 14681번 문제 제출 결과)

반응형