求1!+2!+3!+4!+...+n!的結果。
輸入數據含有不多於50個的正整數n(1≤n≤12)。
對於每個n,輸出計算結果。每個計算結果應占獨立一行。
3 6
9 873
#include <iostream>
using namespace std;
int main()
{
int n;
int result(int);
while(cin>>n)
cout<<result(n)<<endl;
return 0;
}
int result(int n)
{
int fac(int);
if(n==1)
return 1;
else
return result(n-1)+fac(n); //遞歸
}
int fac(int n)
{
if(n==1)
return 1;
else
return n*fac(n-1); //遞歸
}