2013년 1월 15일 화요일

재귀 호출


재귀 호출 : 자기 자신을 호출하는 형식

1.팩토리얼 연산 처럼 재귀적인 구조를 가지고 있을때 재귀 호출을 사용한다.
2.종료 조건을 명시하여 반환점을 명확히 지정해야 한다.

 예제
int Factorial(int n)
{
     if (n <= 1) {//종료 조건
          return 1;
     } else {
          return n*Factorial(n-1);//하단 풀이
     }
}

void main()
{
     printf("1~5까지의 곱=%d\n",Factorial(5));
}



//풀이
5*Factorial(4)
5*(4*Factorial(3))
5*(4*(3*Factorial(2)))
5*(4*(3*(2*Factorial(1))))
5*(4*(3*(2*1)))
5*(4*(3*2))
5*(4*6)
5*24
120


예제 출처 : http://www.soenlab.com/

댓글 없음:

댓글 쓰기