[SEB FE] Section 1 unit3 (3) - 반복문 문제 풀기2

동화·2022년 10월 6일
0

코드스테이츠

목록 보기
5/32

14_characterAndNumber

let output = characterAndNumber('hello');
console.log(output); // --> 'h0e1l2l3o4'

문자열을 입력받아 각 문자(letter) 뒤에 해당 문자의 인덱스가 추가된 문자열을 리턴해야 합니다.

function characterAndNumber(word) {
  // 빈 문자열일 때, 빈 문자열 리턴
  // 문자열+숫자i
  let result = '';
  for (let i = 0; i<word.length; i++){
    result = result + word[i] + i
  }
  return result
}

위에서 좀 했다고 금방 성공





15_computePower

let output = computePower(2, 3);
console.log(output); // --> 8

밑(base)과 지수(exponent)를 입력받아 밑의 거듭제곱을 리턴해야 합니다.

  • number 타입을 리턴해야 합니다.
  • 반복문(for)문을 사용해야 합니다.
  • Math.pow, 거듭제곱 연산자 사용은 금지됩니다. (거듭제곱은 자바스크립트 표준 내장 객체인 Math 객체를 통해 쉽게 구할 수 있습니다.)
function computePower(base, exponent) {
  return Math.pow(base, exponent)
}

쓰지말랬는데 그냥 써봄..

function computePower(base, exponent) {
  // 밑을 지수만큼 곱한다 base * base * base ... * base (exponent개)
  let result = 1;
  for (let i = 0; i<exponent; i++){
    result = result * base 
  }
  return result
}

처음값 result = 0 으로 잡았다가 모든 답이 0으로 나와서 수정..^^ 그랬더니 숫자가 하나 크게 나왔더니

<= 이걸 < 로 바꾸어주었더니 얼떨결에 성공했다......





16_getSumOfFactors

let output = getSumOfFactors(8);
console.log(output); // --> 15 (1 + 2 + 4 + 8)

output = getSumOfFactors(12);
console.log(output); // --> 28 (1 + 2 + 3 + 4 + 6 + 12)

수를 입력받아 약수(factor)의 합을 리턴해야 합니다.

사실 이문제부터 집에 못갈거 같아서 조금 똥줄탔음.. ㅋ_ㅋ
이 코플릿에 적어 놓은 내용을 먼저 보면..

function getSumOfFactors(num) {
  let index = 0;
  for (let i = 1; i<=num ; i++ ){
    if (num % i === 0){
      index = index + i //이 부분이 이해가 잘 안감..
    } 
  }
  return index
}
//다시
//index = 0 let i = 0, 1 랑 < <= 개념 확실히 하기

이거였다.. 명심하고 다시 해봐야지

function getSumOfFactors(num) {
  // 수의 약수를 구하기
  // 약수의 합을 리턴하기
  // 약수 구하기- 1부터 쭉 나눠서 나누어떨어지는 수
  let result = 0;
  for (let i = 1; i<=num; i++){
    if (num % i === 0){
      result = result + i
    }
  }
  return result
}

하지만.. 여태 회고했던게 도움이 많이 되었는지..
너무 쉽게 해결 돼서 조금 당황ㅋㅋㅋㅋ ㅠ ㅠ 블로그에 글쓰고 다시 풀고 한게 참
도움이 많이 된다..

0개의 댓글