[프로그래머스] 각도기
카테고리 : 컴퓨터 공학
태그: programmers · Code Refactoring · 참고 할 만한 다른 사람의 코드 · 코딩 기초 트레이닝 · 프로그래머스 · 코딩테스트 · JavaScript · 각도기 · js 각도기
태그: programmers · Code Refactoring · 참고 할 만한 다른 사람의 코드 · 코딩 기초 트레이닝 · 프로그래머스 · 코딩테스트 · JavaScript · 각도기 · js 각도기
문제 설명
각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle
이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.
- 예각 : 0 <
angle
< 90 - 직각 :
angle
= 90 - 둔각 : 90 <
angle
< 180 - 평각 :
angle
= 180
제한사항
- 0 <
angle
≤ 180 angle
은 정수입니다.
입출력 예
angle | result |
---|---|
70 | 1 |
91 | 3 |
180 | 4 |
입출력 설명
입출력 예 #1
angle
이 70이므로 예각입니다. 따라서 1을 return합니다.
입출력 예 #2
angle
이 91이므로 둔각입니다. 따라서 3을 return합니다.
입출력 예 #2
angle
이 180이므로 평각입니다. 따라서 4를 return합니다.
나의 첫번째 풀이
function solution(angle) {
if (angle && angle < 90) {
return 1;
} else if (angle === 90) {
return 2;
} else if (angle && angle < 180) {
return 3;
} else {
return 4;
}
}
Code Refactoring
function solution(angle) {
return angle < 90 ? 1 : angle === 90 ? 2 : angle < 180 ? 3 : 4;
}
// 가독성은 떨어짐
참고 할 만한 다른 사람의 코드
function solution(angle) {
return [0, 90, 91, 180].filter((x) => angle >= x).length;
}