<코드타카 3주 차 05.>

강민수·2021년 12월 19일
0

문제

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

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

풀이

Method 1

const factorial = n => {
  // 종료 조건; 0일 경우 1을 return
  if (n === 0) return 1;

	// 재귀 함수를 사용하여 팩토리얼 계산. Ex. n * (n-1) * ( n-1)-1 ...
  return n * factorial(n-1);
}

Method 2

const factorial = n => {
// n의 시작값을 1로 지정(팩토리얼은 0일 필요  X)
var result = 1;

// for 문을 이용하여 n의 크기를 1씩 줄여나가면서 곱한다. (단, 0은 제외)
for (var i = n; i >= 1; i--) {
	// 값들을 모두 곱해 result에 저장
	result *= i;
}
return result;
profile
개발도 예능처럼 재미지게~

0개의 댓글