Basic for coding test - 조건문 편

NavDevJae·2021년 2월 19일
0

Basic Coding Test

목록 보기
2/4
post-thumbnail

기본적인 코딩 테스트 예제.

문제 1. 나이를 입력받아 술을 마실 수 있는지 (18세 이상) 여부를 리턴해야 한다.
(Boolean type 리턴) // isOldEnoughToDrink

function isOldEnoughToDrink(age) {   // age라는 파라미터를 입력받았다. 
  if (age >= 18) {    // 나이가 18세 이상일 경우 
    return true;  // 참을 리턴한다. (boolean type으로 리턴해야 하기에)
  } else { // 나이가 18세 이상이 아닌 경우
    return false; // 거짓을 리턴한다. 
}

문제 2. 수를 입력받아 5 그리고 7로 각각 나눈 뒤 나머지 값에 따라 알맞은 메시지를 리턴해야 한다. // fizzBuzz
출력 :
1. 5로 나누어 떨어지는 경우 => 'Fizz'리턴.
2. 7로 나누어 떨어지는 경우 => 'Buzz'리턴.
3. 5와 7로 나누어 떨어지는 경우 => 'Fizz Buzz'리턴.
4. 둘다 나누어 떨어지지 않는 경우 => 'No Fizz Buzz'리턴.

function fizzBuzz(num) {
  if (num%5 === 0 && num%7 === 0) {  // 5와 7로 나누어 떨어지는 경우 
    return 'Fizz Buzz';  // 'Fizz Buzz'를 리턴한다. 
  } else if (num%5 === 0) {  // 5로 나누어 떨어지는 경우
    return 'Fizz';  // 'Fizz'를 리턴한다. 
  } else if (num%7 === 0) {  // 7로 나누어 떨어지는 경우
    return 'Buzz';  // 'Buzz'를 리턴한다. 
  } else {  // 위의 조건문이 성립되지 않게되면 
    return 'No FizzBuzz';  // 'No FizzBuzz'를 리턴한다. 
  }
}

문제 3. 두개 수를 입력받아 아래의 2가지 조건 모두 만족하는지 검사한다.
조건 :
1. EitherOdd : 적어도 하나의 수는 홀수이다.
2. LessThan11 : 두 수 모두 11보다 작다.

function isEitherOddLessThan11(num1, num2) {  // num1과 num2 파라미터를 입력받는다. 
  if (num1 < 11 && num2 < 11) {  // num1, num2 모두 11보다 작다면
    if (num1%2 === 1 || num2%2 === 1) {  // num1, num2 중 하나라도 홀수인 경우 
      return true;  // 두 조건문을 모두 만족하면 참을 리턴한다. 
    }  
    return false;  // 첫번째 조건문만 만족한다 하여도 거짓을 리턴한다. 
  } 
  return false; // 두 조건문을 모두 만족하지 않기에 당연히 거짓을 리턴한다. 
}  

문제 4. 삼각형 세 변을 입력받아 직각삼각형 여부 리턴해야 한다. // pythagorean

function pythagorean(a,b,c) {
  let maxNum = Math.max(a,b,c);  // a, b, c 파라미터 중 최댓값을 할당한다.
  if (maxNum === a) {  // a가 최댓값이라면 
    if (Math.pow(maxNum, 2) === Math.pow(b, 2) + Math.pow(c, 2)) { // a^2 = b^2 + c^2
      return true;    // 참을 리턴한다. 
    }
  } else if (maxNum === b) {  // b가 최댓값이라면 
    if (Math.pow(maxNum, 2) === Math.pow(a, 2) + Math.pow(c, 2)) { // b^2 = a^2 + c^2
      return true;  // 참을 리턴한다. 
    }
  } else if (maxNum === c) {  // c가 최댓값이라면 
    if (Math.pow(maxNum, 2) === Math.pow(a, 2) + Math.pow(b, 2)) { // c^2 = a^2 + b^2
      return true;  // 참을 리턴한다. 
    }
  }
  return false; // 위 조건을 모두 만족하지 않을 경우 거짓을 리턴한다. 
}

@ 참고사항!!

Math.max는 최댓값을 구하기 위한 메소드이다. => 검색어 = max number mdn javascript
Math.pow는 숫자의 제곱근을 구하기 위한 메소드이다. => 검색어 = square mdn javascript

profile
전직 항해사 출신 미래 개발자

0개의 댓글

관련 채용 정보