본문 바로가기
wecode [TIL]

[TIL] Wecode 중간고사 (JavaScript)

by 프린벼르 2022. 2. 13.

지난 11일에 중간고사를 보았다. 1시간동안 5문제를 푸는 것이고, 결과에 연연하기 보다는 여태껏 배운 개념을 활용해서 얼마나 아는지 체크하라는 목적으로 위코드에서 중간고사를 내었다. 1시간이라는 시간이 주어졌고, 그동안 배운 JavaScript지식의 양은 방대해서 잘 풀어내지 못할까봐 조금 무서웠다. 하지만 막상 살펴본 문제는 오히려 레플릿 문제보다는 쉬운 난이도였던 것 같다. 


중간고사 1번 문제

짝수인지 판별하는 함수이기에 2로 나누었을때, 나머지가 0이 되지않으면 홀수로 판단을 하고 0이라면 짝수로 판단하는 함수를 만들어주면 되겠다고 생각했다.
function isEven(num) {
  // 아래 코드를 입력해주세요.
  let answer = '';
  if(num % 2 === 0){answer = `짝수 입니다.`}
  else {answer = '짝수가 아닙니다.'}
  return answer;
}​
그래서 이렇게 작성해주었다.

중간고사 2번 문제

식사값에 팁과 세금을 계산해서 더해주면 되겠다고 생각을 했다. 그래서 바로 아래와같이 함수를 구현했다.
function calculateTotal(amount) {
  // 아래 코드를 작성해주세요.
  return answer = (amount+(amount*0.095)+(amount*0.15));
}​
간단하게 한 줄로 구현을 해보았다.

중간고사 3번 문제

- 를 기준으로 앞의 문자열을 반환하라는 부분에서 split()메소드를 사용하면 되겠다고 생각했다. (split은 배열로 변환해주니까..)
function getPrefix(str) {
  // 아래 코드를 작성하세요.
  let s = str.split('-');
  return s[0];
}​
그리고 앞의 문자열을 반환하는 것이니까 배열의 맨앞은 0부터 시작하는 것이라 [0]을 넣어줬더니 통과했다.

중간고사 4번 문제

당연히 문자의 위치를 반환하라해서 indexOf함수를 사용하려 했다. 하지만 문제의 제한 조건에 indexOf함수를 사용하지말라고 되어있어서 잠깐 당황했었다. 하지만 아무리 생각해도 대체할 수 있는 함수가 떠오르지않았고, 구글선생에게 물었다. 구글선생은 나에게 search함수가 있다고 알려주었다. 그래서 아래와같이 코드를 작성했다.
function getFind(filter, sentence) { 
  // 아래 코드를 작성해주세요.
  return sentence.search(filter);
}​
잘 작동한다. 

코드 작동하면 콘솔로그에 정상적으로 2가 찍힘


중간고사 5번(마지막) 문제

배열안의 값들 중 가장 긴 단어를 찾는 함수를 만들으라는 말에서 "for ... of" 를 떠올렸다
function find_longest_word(arr) {
  // 아래 코드를 구현해주세요.
  let answer = '';
  for(let x of arr){
    if(answer.length < x.length){
      answer = x;
    }
  }
  return answer;
}​

 

콘솔 로그가 정상적으로 잘 찍힘

 

댓글