Daily Coding

준성·2023년 5월 17일
0
post-thumbnail

코딩문제들을 풀어 주석으로 내의견을 정리해봤다.

문제 1번


문자열을 입력받아 문자열을 구성하는 각 단어의 첫 글자가 대문자인 문자열을 리턴해야 한다.

function letterCapitalize(str) {
  
  // 각 글자의 첫글자를 대문자로 문자열 리턴
  if(str.length===0){ // 빈 문자열 입력시 빈 문자열 리턴
  return '';
  }

  let temp=str.split(' '); // 공백(' ')을 구분자로 하여 단어를 배열에 넣는다
  let tempStr=''; // 첫글자 대문자 변환을 위한 임시 변수 선언

  for(let i=0;i<temp.length;i++){
  if(temp[i]!==''){ // 연속된 공백의 경우 그대로 공백을 출력하고 아닌 경우에 대문자 변환 실행
  tempStr=temp[i][0].toUpperCase()+temp[i].slice(1); 
  // 배열의 첫글자(string)만 대문자 변환 후 첫글자만 자른 나머지 부분을 합침
  temp[i]=tempStr; // 다시 배열에 그 값을 할당
  }
  }
  return temp.join(' '); // 배열을 공백을 구분자로 하여 문자열화 리턴
}

문제 2번


머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다. 양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n과 k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면 총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요.

function solution(yang , drink) {
  // 순서대로 구하면 된다. Math.floor(yang / 10)을 사용하여 10개를 먹을 때 2000원을 뺄수 있다.
    return 12000 * yang + 2000 * drink - 2000 * Math.floor(yang/10);
}

문제 3번


정수 num과 n이 매개 변수로 주어질 때, num이 n의 배수이면 1을 return n의 배수가 아니라면 0을 return하도록 solution 함수를 완성해주세요.

function solution(num, n) {
  // num 을 n으로 나눈 값이 0 이라면 1을 리턴하고 아니라면 0을 리턴해라
    return (num % n === 0) ? 1 : 0;
}

문제 4번


정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요.

function solution(numbers) {
  // 빈 배열을 만들어주고
    let arr = [];
  // for of 문으로 각 배열에 요소들을 불러와
    for(let i of numbers){
      // 곱하기 2를 하여 빈 배열에 push()를 사용한다.
        arr.push(i * 2)
    }
    return arr
}

문제 5번


정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.

function solution(num_list) {
  // revese 메서드를 이용하면 배열을 뒤집을 수 있다.
    return num_list.reverse();
}
profile
코드를 그리다.

0개의 댓글