WeCode Kata Day 15

luneah·2021년 12월 18일
0

WeCode Kata

목록 보기
15/20
post-thumbnail

문제

재귀를 사용하여 팩토리얼(factorial)을 구하는 함수를 구현해주세요. 팩토리얼이란 1에서부터 n까지의 정수를 모두 곱한것을 말합니다.

1! = 1
2! = 2 * 1
5! = 5 * 4 * 3 * 2 * 1

Thinking Algorithm

재귀 알고리즘 사용

Ex)
const countdown = n => {
  console.log(n);
  
  if (n === 0) return;
  countdown(n-1);
}

countdown(10);

countdown 함수는 받은 인자를 console로 출력한다. 그런데 위의 함수를 실행하면 10에서 시작해서 무한으로 마이너스 값까지 내려간다. 0이 되면 더이상 재귀를 이어나가지 않도록 종료 조건을 추가해준다.

Code

const factorial = n => {
  if(n === 0) return 1;
  return n * factorial(n-1);
}
profile
하늘이의 개발 일기

0개의 댓글