문제
창영이는 삼각형의 종류를 잘 구분하지 못한다. 따라서 프로그램을 이용해 이를 외우려고 한다.
삼각형의 세 각을 입력받은 다음,
- 세 각의 크기가 모두 60이면, Equilateral
- 세 각의 합이 180이고, 두 각이 같은 경우에는 Isosceles
- 세 각의 합이 180이고, 같은 각이 없는 경우에는 Scalene
- 세 각의 합이 180이 아닌 경우에는 Error
를 출력하는 프로그램을 작성하시오.
입력
총 3개의 줄에 걸쳐 삼각형의 각의 크기가 주어진다. 모든 정수는 0보다 크고, 180보다 작다.
출력
문제의 설명에 따라 Equilateral, Isosceles, Scalene, Error 중 하나를 출력한다.
예제 입력 1 복사
60
70
50
예제 출력 1 복사
Scalene
a = int(input())
b = int(input())
c = int(input())
if a == b == c == 60:
print('Equilateral')
if a + b + c == 180:
if a == b or b == c or a == c:
print('Isosceles')
if a != b and a != c:
print('Scalene')
if a + b + c != 180: # else: 도 틀림
print('Error')
a = int(input())
b = int(input())
c = int(input())
if a + b + c == 180:
if a == b == c == 60:
print('Equilateral')
if a == b or b == c or a == c:
print('Isosceles')
if a != b and a != c and b != c:
print('Scalene')
if a + b + c != 180:
print('Error')
둘 다 안된다...
a = int(input())
b = int(input())
c = int(input())
if a + b + c == 180:
if a == b == c == 60:
print('Equilateral')
elif a == b or b == c or a == c:
print('Isosceles')
# if a != b and a != c and b != c:
else:
print('Scalene')
else:
print('Error')
elif를 사용해야 맞는다... elif는 위의 if문이 아닐 것이라고 필터링을 하는데 그걸 생각 못했다..!
'코딩테스트 > 백준' 카테고리의 다른 글
백준 > 단계별로 풀어보기 > 기하: 직사각형과 삼각형 > 9063번: 대지 (0) | 2024.07.25 |
---|---|
백준 > 단계별로 풀어보기 > 기하: 직사각형과 삼각형 > 5073번: 삼각형과 세 변 (4) | 2024.07.24 |
백준 > 단계별로 풀어보기 > 기하: 직사각형과 삼각형 > 15894번: 수학은 체육과목 입니다 (1) | 2024.07.23 |
백준 > 단계별로 풀어보기 > 기하: 직사각형과 삼각형 > 3009번: 네 번째 점 (0) | 2024.07.23 |
백준 > 단계별로 풀어보기 > 기하: 직사각형과 삼각형 > 1085번: 직사각형에서 탈출 (0) | 2024.07.23 |