C 백준_14681번. 사분면 고르기

김하람·2022년 3월 28일
0

C 백준_if문

목록 보기
5/5

💻 문제 설명

주어진 문제는 사용자로부터 좌표를 입력받고, 해당 좌표가 몇 사분면에 위치하는지를 출력하는 문제이다.
문제를 살펴보면 입력받을 수 있는 x와 y의 범위가 제시되어 있다.

  • -1000 <= x <= 1000, x!=0
  • -1000 <= y <= 1000, y!=0

각 사분면의 x와 y의 부호를 살펴보자.

1사분면 +,+
2사분면 -,+
3사분면 -,-
4사분면 +,-

이에 따라 조건문을 만들어서 영역에 따라 사분면의 번호를 출력하면 된다.

💻 생각 정리

  1. 사용자로부터 좌표를 입력 받는다.
  2. 입력받은 좌표가 각각의 범위를 만족하는지 검사한다.
  3. 입력받은 좌표를 검사한다.

3-1. x가 양수인 경우
3-1-1. y가 양수인 경우 1사분면이므로 1을 출력한다.
3-1-2. y가 음수인 경우 4사분면이므로 4를 출력한다.

3-2. x가 음수인 경우
3-2-1. y가 양수인 경우 2사분면이므로 2를 출력한다.
3-2-2. y가 음수인 경우 3사분면이므로 3을 출력한다.

💻 소스 코드

#include <stdio.h>

int main(void) {
  //x와 y 각각의 좌표를 입력받기 위한 변수
  int x,y;
  //x와 y 좌표 입력받기
  scanf("%d %d", &x,&y);
  //조건문으로 입력받은 좌표가 몇 사분면인지 검사하고, 출력하기
    if(x>0) {
      if(y>0) printf("1");
      else printf("4");
    }
    else {
      if(y>0) printf("2");
      else printf("3");
    }
  return 0;
}

💻 기타 설명

이 문제는 다양한 조건문으로 풀 수 있는 문제이다.
x와 y 각각의 경우를 모두 조건문으로 나눠서 해결하는 방법도 있다.

if (x>0 && y>0) printf("1");

이런식으로 1사분면부터 4사분면까지의 경우를 나눠 조건문을 만들 수 있다.
이 문제는 조건문의 사용 방법을 정확하게 이해한다면 해결할 수 있는 문제이다.

0개의 댓글