본문 바로가기
codes/daily coding

18_numberSearch

by Mia_ 2022. 12. 11.
//! 22-12-09 풀이

function numberSearch(str) {
  //Q. 문자열을 입력받아 문자열에서 숫자를 모두 찾아 더한 뒤에 
  // 해당 값을 (숫자와 공백을 제외한 나머지) 문자열의 길이로 나눈 값을 정수로 반올림하여 리턴

  // 문자열을 'Hello6 9World 2,'로 받았다고 가정할 시
  // 숫자는 6,9,2 임 --> 모두 더한 값 17
  // 숫자와 공백을 제외한 나머지 문자열의 길이 = 11
  // 숫자의 toal 값 / 숫자, 공백 제외 문자열 length = 값을 정수로 반올림하여 리턴
  // 17/11 = 1.54.. ---> 정수로 반올림 ---> 2 

  if(str.length === 0) return 0;
  

  let arr = [];
  let totalNum = []
  for(let i=0; i < str.length; i++){
    if(!(isNaN(Number(str[i]))) && str[i] !== ' '){
      totalNum.push(Number(str[i])); //totalNum === [6,9,2]
    } else if(str[i] !== ' ') {
      arr.push(str[i]); //arr.length === 11
    }
  }

  let totalSum = 0;
  for(let j =0; j < totalNum.length; j++){
  totalSum = totalSum + totalNum[j]; //totalSum = 17
  }
  return Math.round(totalSum / arr.length);
}
//let str = 'Hello6 9World 2,';

'codes > daily coding' 카테고리의 다른 글

22_fibonacci  (0) 2022.12.20
19_decryptCaesarCipher  (0) 2022.12.11
03_powerOfTwo  (0) 2022.12.07
02_computeWhenDouble  (0) 2022.11.20
01_transformFirstAndLast  (0) 2022.11.20