촉촉한초코칩

[백준] 10101(삼각형 외우기) Python, C 본문

Algorithm

[백준] 10101(삼각형 외우기) Python, C

햄친구베이컨 2025. 1. 14. 23:45

문제

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

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

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

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

입력

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

출력

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


조건에 따라 if문을 넣기만 하면 해결된다. 

 

C언어

#include <stdio.h>

int main() {

  int x,y,z;
  scanf("%d", &x);
  scanf("%d", &y);
  scanf("%d", &z);

  if((x==60) && (y==60) && (z==60)) {
    printf("Equilateral");
  } else if((x+y+z==180) & ((x==y)||(x==z)||(y==z))) {
    printf("Isosceles");
  } else if((x+y+z==180) & ((x!=y)||(x!=z)||(y!=z))) {
    printf("Scalene");
  } else if(x+y+z!=180) {
    printf("Error");
  }
}

 

파이썬

x = int(input())
y = int(input())
z = int(input())

if x==60 and y==60 and z==60:
    print("Equilateral")
elif x+y+z==180 and ((x==y or x==z or y==z)):
    print("Isosceles")
elif x+y+z==180 and ((x!=y or x!=z or y!=z)):
    print("Scalene")
elif x+y+z!=180:
    print("Error")

 

* 파이썬에서는 |, &이 아니라 and, or로 작성하기