실습 - Go/백준

14681 - 사분면 고르기 (Golang)

개발참치 2021. 7. 29.

문제

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

사분면은 아래 그림처럼 1부터 4까지 번호를 갖는다. "Quadrant n"은 "제n사분면"이라는 뜻이다.

예를 들어, 좌표가 (12, 5)인 점 A는 x좌표와 y좌표가 모두 양수이므로 제1사분면에 속한다.

점 B는 x좌표가 음수이고 y좌표가 양수이므로 제2사분면에 속한다.

점의 좌표를 입력받아 그 점이 어느 사분면에 속하는지 알아내는 프로그램을 작성하시오.

단, x좌표와 y좌표는 모두 양수나 음수라고 가정한다.

입력

첫 줄에는 정수 x가 주어진다. (−1000 ≤ x ≤ 1000; x ≠ 0) 다음 줄에는 정수 y가 주어진다. (−1000 ≤ y ≤ 1000; y ≠ 0)

 

예제 입력

9
-13

출력

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

 

예제 출력

4

 

분석

 

이중 조건문 IF 연산을 사용하여 답을 구하는 기본 문제입니다. 

 

풀이

 

Goland 캡쳐

문제의 그림을 따라, 어떤 사분면에 속하는지 출력해주면 되겠습니다.

 

소스 코드

package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
)

func main() {
	scanner := bufio.NewScanner(os.Stdin)

	scanner.Scan()
	a, _ := strconv.Atoi(scanner.Text())
	scanner.Scan()
	b, _ := strconv.Atoi(scanner.Text())

	if a > 0 {
		if b > 0 {
			fmt.Println(1)
		} else {
			fmt.Println(4)
		}
	} else {
		if b > 0 {
			fmt.Println(2)
		} else {
			fmt.Println(3)
		}
	}
}

 

'실습 - Go > 백준' 카테고리의 다른 글

2884 - 알람 시계 (Golang)  (0) 2021.07.29
2753 - 윤년 (Golang)  (0) 2021.07.29
9498 - 시험 성적 (Golang)  (0) 2021.07.29
1330 - 두 수 비교하기 (Golang)  (0) 2021.07.29
2108 - 통계학 (Golang)  (0) 2021.07.27

댓글