프로그래머스 코딩테스트
문제 1 - 나이 출력
머쓱이는 40살인 선생님이 몇 년도에 태어났는지 궁금해졌습니다. 나이 age가 주어질 때, 2022년을 기준 출생 연도를 return 하는 solution 함수를 완성해주세요.
function solution(age) {
var answer = 0;
return answer;
}
// 풀이
function solution(age) {
return new Date().getFullYear() - (age + 1);
}
설명: .getFullYear() 는 현재 주어진 날짜 정보를 해당 년도로 바꿔주는 메서드입니다. 더불어 대한민국에서는 만 나이가 아닌 세는 나이를 사용하기 때문에 주어진 나이에서 +1을 해줘야 한다.
문제 2 - 숫자 비교하기
정수 num1과 num2가 매개변수로 주어집니다. 두 수가 같으면 1 다르면 -1을 retrun하도록 solution 함수를 완성해주세요.
function solution(num1, num2) {
var answer = 0;
return answer;
}
// 풀이
function solution(num1, num2) {
var answer = 0;
if(num1 == num2){
answer = 1;
} else {
answer =-1;
}
return answer;
}
설명: if문을 사용하여 num1과 num2의 숫자를 비교한 뒤 각각 return할 값을 넣는 기본적인코드이다.
문제 3 - 각도기
각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.
function solution(angle) {
var answer = 0;
return answer;
}
// 풀이
function solution(angle) {
var answer = 0;
if(angle <90){
answer = 1;
} else if(angle == 90){
answer = 2;
} else if(angle<180 && angle >90){
answer =3;
} else if(angle == 180)
answer =4;
return answer;
}
설명: if문과 else if문을 써서 각각의 조건에 맞는 값을 answer에 넣어준다.
문제 4 - 짝수의 합 구하기
정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.
function solution(n) {
var answer = 0;
return answer;
}
// 풀이
function solution(n) {
var sum=0;
var answer = 0;
if(n%2==0){
for(let i=n; i>0; i-=2){
sum += i;
}
} else {
for(let i=n-1; i>0; i-=2){
sum += i;
}
}
answer = sum;
return answer;
}
// 풀이
function solution(num1, num2) {
var answer = parseInt(num1 / num2);
return answer;
}
설명: 값을 더 할 함수 sum을 우선적으로 만들어주었다. 이후 n이 짝수이면 i가 n부터 시작할 수 있도록 하고, 홀수일 경우 n-1을 해서 반복문을 실행했다.
문제 5 -배열의 평균값
정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.
function solution(numbers) {
var answer = 0;
return answer;
}
// 풀이
function solution(numbers) {
var answer = 0;
let sum = 0;
for(let i=0; i < numbers.length; i++){
sum += numbers[i];
}
answer = sum/numbers.length;
return answer;
}
설명: 우리는 평균을 구할 때 산수로 값을 다 구하고 그 갯수만큼 나눈다. 마찬가지로 for문을 사용해 내용의 값을 전부 더한 뒤, 그 길이만큼 나누어 정답을 구했다.