작성일 :

문제 링크

10101번 - 삼각형 외우기

설명

세 각을 통해 삼각형이 가능한지 판단하고, 각의 크기에 따라 삼각형의 종류를 분류하는 문제입니다.

  • 세 각의 크기를 입력받고, 그 합이 180도가 아니면 삼각형이 될 수 없습니다.
  • 삼각형이 될 수 있는 경우, 각의 크기에 따라 다음과 같이 분류합니다:
    • 세 각이 모두 60도이면 Equilateral
    • 두 각이 같으면 Isosceles
    • 세 각이 모두 다르면 Scalene

접근법

  • 세 각을 입력받아 합을 계산합니다.
  • 세 각의 합이 180이 아니라면 "Error"를 출력합니다.
  • 세 각이 모두 60도이면 "Equilateral"
  • 두 각이 같으면 "Isosceles"
  • 모두 다르면 "Scalene"을 출력합니다.

Code

[ C# ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using System;

class Program {
  static void Main() {
    var a = int.Parse(Console.ReadLine());
    var b = int.Parse(Console.ReadLine());
    var c = int.Parse(Console.ReadLine());

    if (a + b + c != 180)
      Console.WriteLine("Error");
    else if (a == 60 && b == 60 && c == 60)
      Console.WriteLine("Equilateral");
    else if (a == b || b == c || a == c)
      Console.WriteLine("Isosceles");
    else
      Console.WriteLine("Scalene");
  }
}



[ C++ ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <bits/stdc++.h>

using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  int f, s, t; cin >> f >> s >> t;
  if (f + s + t != 180) cout << "Error\n";
  else {
    if (f == 60 && s == 60 && t == 60) cout << "Equilateral\n";
    else {
      if (f == s || f == t || s == t) cout << "Isosceles\n";
      else cout << "Scalene\n";
    }
  }

  return 0;
}