✏️ 문제풀이/백준

[백준/Java] 10101번 :: 삼각형 외우기

bono-hye 2024. 5. 7. 22:58

| 문제

창영이는 삼각형의 종류를 잘 구분하지 못한다. 따라서 프로그램을 이용해 이를 외우려고 한다.

삼각형의 세 각을 입력받은 다음,

  • 세 각의 크기가 모두 60이면, Equilateral
  • 세 각의 합이 180이고, 두 각이 같은 경우에는 Isosceles
  • 세 각의 합이 180이고, 같은 각이 없는 경우에는 Scalene
  • 세 각의 합이 180이 아닌 경우에는 Error

를 출력하는 프로그램을 작성하시오.

 

| 입력

총 3개의 줄에 걸쳐 삼각형의 각의 크기가 주어진다. 모든 정수는 0보다 크고, 180보다 작다.

 

| 출력

문제의 설명에 따라 Equilateral, Isosceles, Scalene, Error 중 하나를 출력한다.

 

| 풀이

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

public class Main
{
	public static void main(String[] args) throws IOException 
	{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int a = Integer.parseInt(br.readLine());
		int b = Integer.parseInt(br.readLine());
		int c = Integer.parseInt(br.readLine());
		
		if(a+b+c != 180)
			System.out.println("Error");
		else if(a == b && b == c)
			System.out.println("Equilateral");
		else if(a == b || b == c || a == c)
			System.out.println("Isosceles");
		else
			System.out.println("Scalene");
	}
}

 

| 정리

if문으로 조건에 따라 출력되는 값을 분기해주면 되는 간단한 문제이다.

가장 큰 조건을 먼저 판별하고 조건을 추려가는 형식으로 작성하면 될 것 같다는 나의 생각~!

이렇게 하면 세 각의 합이 180이다 라는 조건을 매번 적지 않아도 되니까!