Test | JS 중간 시험

코딩하는붕어·2021년 6월 21일
post-thumbnail

1. 짝수인지 판별하는 함수 isEven을 작성하세요.

console.log(isEven(11)) // --> "짝수가 아닙니다."
console.log(isEven(10)) // --> "짝수 입니다."

👇🏻 My solution

function isEven(num) {
  if(num % 2 == 0) {  // 2로 나눠서 떨어지면
    return "짝수 입니다.";
  } else {
    return "짝수가 아닙니다.";
  }
}



2. calculateTotal 함수를 작성하세요.

팁과 세금을 제외한 식사값이 주어졌을때, calculateTotal 함수는 팁과 세금이 포함된 총 식사값을 반환한다.

Notes:

  • 세금은 9.5%, 팁은 15%로 계산하세요.
  • 팁을 계산할때 세금을 포함하여 계산하지 마세요.
console.log(calculateTotal(20)); // --> 24.9

👇🏻 My solution

function calculateTotal(amount) {
  return amount + (amount * 0.095) + (amount * 0.15);
}



3. getPrefix 함수를 작성하세요.

문자열이 주어졌을때, -를 기준으로 앞에 있는 문자열을 반환하세요.

console.log(getPrefix('BTC-KRW')) // --> BTC

👇🏻 My solution

function getPrefix(str) {
  const sentence = str.split('-');  // -를 기준으로 나눠서
  return sentence[0];  // 첫번째 배열을 반환한다.
}



4. getFind 함수를 작성하세요.

문자와 문자열이 주어졌을때, getFind 함수는 주어진 문자열에서 주어진 문자가 나타나는 첫번째 위치를 반환한다.

Notes: 문자열의 첫번째 문자는 인덱스 값 0을 가진다. 만약 문자열에 해당 문자가 여러번 나타나면, 첫번째로 나타나는 위치를 반환해야 한다. 만약 문자가 문자열에 존재하지 않는다면, -1를 반환해야 한다.

⭐️중요!! indexOf 함수를 사용하지 마세요.

const output = getFind('a', 'I am a hacker')
console.log(output) // --> 2

👇🏻 My solution

function getFind(filter, sentence) { 
  // 아래 코드를 작성해주세요.
  for (i = 0; i < sentence.length; i++) {  // sentence 인자의 길이만큼 순회하면서
    if(sentence[i] === filter) {  // filter 인자의 값과 sentence 배열 인자의 값이 같으면
      return i;  // 해당 인자의 배열 안 위치를 반환한다.
    }
  }
  return -1; 
}



5. find_longest_word 함수를 작성하세요.

주어진 리스트 안에 있는 단어 중 가장 긴 단어를 찾을 수 있도록 함수를 완성하세요.

console.log(find_longest_word(["PHP", "Exercises", "Backend"])) 
// --> "Exercises"

👇🏻 My solution

function find_longest_word(arr) {
  let longest = arr[0];  // 단어 배열을 받을 longest 변수를 생성한다.
  for(let i = 0; i < arr.length; i++) {  // 배열 길이만큼 순회하면서 
    if(longest.length < arr[i].length) {  // longest 변수의 길이와 arr 배열 값 길이를 비교하면서 arr 배열 값의 길이가 더 길면
      return longest = arr[i];  // arr 배열에서 가장 긴 단어를 longest 변수로 반환한다.
    }
  }
}
profile
Lofi hiphop, Hifi develope

0개의 댓글