[JS] 중간 점검

양주영·2021년 11월 13일
0

javascript

목록 보기
31/42

1. isEven

문제 > 짝수인지 판별하는 함수 isEven을 작성 주세요.

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

해결방법 >
함수 isEven 생성하고, 짝수인지 홀수인지 판별하는 조건문을 작성한다.

function isEven(num) {
  // 아래 코드를 입력해주세요.
  if(num % 2 === 0){
    return "짝수 입니다."
  }else {
    return "짝수가 아닙니다."
  }
}
console.log(isEven(0));


2. calculateTotal

문제 > calculateTotal 함수를 작성하세요.

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

Notes:

  • 세금은 9.5% 팁은 15% 로 계산하세요.
  • 팁을 계산할때 세금을 포함하여 계산하지 마세요.

해결방법 >
calculateTotal 함수를 생성하고,
세금은 amount의 9.5%, 팁은 amount의 15% 값을 변수 두 개에 할당한다.
그리고 마지막으로 총 합을 리턴해준다.

function calculateTotal(amount) {
  // 아래 코드를 작성해주세요.
  const tax = amount * 0.095
  const tip = amount * 0.15
  return amount + tax + tip;
}
console.log(calculateTotal(20));


3. getPrefix

문제 > getPrefix 함수를 작성하세요.

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

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

해결방법 >
문자열을 일정한 구분자로 잘라서 배열로 저장하기 위한 split함수가 필요하다.
-를 기준으로 문자열을 자르고, 그 중 첫번째인 BTC를 반환하면 된다.

function getPrefix(str) {
  // 아래 코드를 작성하세요.
  const result = str.split('-');
  return result[0];
}
console.log(getPrefix('BTC-KRW'));


4. getFind

문제 > getFind 함수를 작성하세요.

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

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

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

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

해결방법 >
인덱스 i가 for문을 활용해 문자열의 길이만큼 돌면서
주어진 문자와 같을 경우 그 인덱스 값을 반환하면 된다.


function getFind(filter, sentence) { 
  // 아래 코드를 작성해주세요.
  for( let i = 0; i < sentence.length; i++ ){
    if( sentence[i] === filter) {
      return i;
    }
  }
  return -1;

}
console.log(getFind('a', 'I am a hacker'));


5. findLongestWord

문제 > find_longest_word 함수를 만들어 주세요.

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

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

해결방법 >
배열의 첫번째 단어(listWord)를 기준으로, 배열의 길이만큼 인덱스(i)가 돌면서 하나씩 비교한다.
만약, 기준으로 삼은 단어의 길이가 for문으로 돈 배열의 인덱스의 길이보다 작다면
첫번째 단어는 첫번째 단어의 길이보다 큰 값으로 할당된다.
`for문을 다 돌고 난 후, 우리가 원하는 listWord`를 리턴해준다.

function find_longest_word(arr) {
  // 아래 코드를 구현해주세요.
  // const length = arr.length;
  // console.log(length);
  let listWord = arr[0];
  for( let i = 0; i < arr.length; i ++ ){
    if( listWord.length < arr[i].length )
      listWord = arr[i];
  }
  return listWord
}
console.log(find_longest_word(["PHP", "Exercises", "Backend"])) 




profile
뚜벅뚜벅

0개의 댓글