본문 바로가기

C or C++/C or C++ 문제

C/C++ 팩토리얼 재귀함수

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

재귀함수를에대한 설명 -> Click me

 

팩토리얼을 재귀함수로 이런식으로 짤수가있다.

 

팩토리얼에대한 자세한설명은  아래링크를 참조하길바란다.

 

팩토리얼 설명

 

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
int rr(int n)
{
    if(n==0return 1;
    return n * rr(n-1);
}
int main()
{
    int n;
    cout<<"n값 입력 : "cin >> n;
    cout<< "결과 : " << rr(n);
}
cs

 

 

여기서 유의할점은

 

n==0일떄 리턴값을 0으로 보내주게되면

 

0도 같이 곱해 결과가 0이 나올수있으니

 

꼭 리턴값을 1로주자.

 

이렇게되면

 

1부터 n값까지 곱하게되는데

 

원래 팩토리얼은 n부터 1까지 곱하는거라 배웠다

 

하지만 어차피 결과는 같으니 크게 의미를 두지는 말자.

 

 

'C or C++ > C or C++ 문제' 카테고리의 다른 글

C/C++ 1~n까지 총합을 구하는 재귀함수  (0) 2016.11.25
C/C++ 배열 회전(숫자로테이션)  (0) 2016.11.25
codeup.kr 1503 문제  (0) 2016.11.25
codeup.kr 1153번 문제  (0) 2014.11.13
codeup.kr 1152번 문제  (0) 2014.11.12