저장을 습관화
프로그래머스 LV.0 각도기 본문
프로그래머스 LV.0 각도기
https://school.programmers.co.kr/learn/courses/30/lessons/120829
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
1. 문제 명
각도기
2. 문제 설명
각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.
예각 : 0 < angle < 90
직각 : angle = 90
둔각 : 90 < angle < 180
평각 : angle = 180
3. 제한 사항
0 < angle ≤ 180
angle은 정수입니다.
4. 예시
angle | result |
70 | 1 |
91 | 3 |
180 | 4 |
5. 기본 제공 코드
function solution(angle) {
var answer = 0;
return answer;
}
6. 제출한 내 답
const solution = (angle) => {
let answer = 0;
if (0 < angle && angle < 90) {
answer = 1;
} else if (angle === 90) {
answer = 2;
} else if (90 < angle && angle < 180) {
answer = 3;
} else {
answer = 4;
}
return answer;
};
6-2. VSC에 작성한 내용
const solution = (angle) => {
let answer = 0;
if (0 < angle && angle < 90) {
answer = 1;
} else if (angle === 90) {
answer = 2;
} else if (90 < angle && angle < 180) {
answer = 3;
} else {
answer = 4;
}
return answer;
};
// 테스트
console.log(solution(70));
console.log(solution(91));
console.log(solution(180));
7. 특이사항
없음
8. 다른 사람이 작성한 답
8-1. .filter() 메소드
function solution(angle) {
return [0, 90, 91, 180].filter((x) => angle >= x).length;
}
1. [0, 90, 91, 180] 경계값을 배열로 나타낸다.
2. .filter((x) => angle >. x) 매개변수 angle이 x(0, 90, 91, 180)보다 크거나 같은지 검사하고,
조건에 일치하는 값만 남긴다.
3. .length 이번 테스트의 목표는 주어진 angle의 결과를 1, 2, 3, 4로 나타내는 것이다.
.length가 없다면 아래와 같이 나올 것이다.
function solution(angle) {
return [0, 90, 91, 180].filter((x) => angle >= x);
}
// 테스트
console.log(solution(70)); // [ 0 ]
console.log(solution(91)); // [ 0, 90, 91]
console.log(solution(180)); // [ 0, 90, 91, 180 ]
8-2. 삼항연산자
function solution(angle) {
return angle < 90 ? 1 : angle === 90 ? 2 : angle < 180 ? 3 : 4;
}
'코딩 테스트 > 프로그래머스 - 자바스크립트' 카테고리의 다른 글
프로그래머스 LV.1 나머지가 1이 되는 수 찾기 (0) | 2023.08.11 |
---|---|
프로그래머스 LV.0 짝수의 합 (0) | 2023.08.11 |
프로그래머스 LV.1 자릿수 더하기 (0) | 2023.08.07 |
프로그래머스 LV.1 약수의 합 (0) | 2023.08.07 |
프로그래머스 LV.1 x만큼 간격이 있는 n개의 숫자 (0) | 2023.07.28 |