0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
for문으로 i값을 감소시켜가면서 곱할 수도 있지만, 재귀함수 형식으로 하는 것이 더 좋다.
#include <iostream>
using namespace std;
int factorial(int num){ // 팩토리얼 재귀함수
if (num > 2) num = factorial (num - 1);
return num;
}
int main(){
int num, result = 1; // fac 0 이면 1을 출력하게 된다.
cin >> num;
if (num!=0) result = factorial(num);
cout << result;
}