#include<iostream>
using namespace std;
int recursion(int n)
{
int sum=1;
if(n==0)
return 1;
else
sum=n*recursion(n-1);
return sum;
}
int main()
{
/*
递归满足2个条件:
1)有反复执行的过程(调用自身)
2)有跳出反复执行过程的条件(递归出口)
*/
// n! = n * (n-1) * (n-2) * ...* 1(n>0)
int n;
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",recursion(n));
}
return 0;
}
using namespace std;
int recursion(int n)
{
int sum=1;
if(n==0)
return 1;
else
sum=n*recursion(n-1);
return sum;
}
int main()
{
/*
递归满足2个条件:
1)有反复执行的过程(调用自身)
2)有跳出反复执行过程的条件(递归出口)
*/
// n! = n * (n-1) * (n-2) * ...* 1(n>0)
int n;
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",recursion(n));
}
return 0;
}