描述
给定正整数n,求不大于n的正整数的阶乘的和(即求1!+2!+3!+...+n!)
输入
输入有一行,包含一个正整数n(1 < n < 12)。
输出
输出有一行:阶乘的和。
样例输入
5
样例输出
153
题意
利用1!+2!+3!+...+n!求不大于n的正整数的阶乘的和。
思路
sum=0,num=1for循环的外循环提供数值i每次将num初始为1,内循环求i的阶乘,num=num*j将一个数的阶乘将结果放入sum=sum+num;输出sum
代码实现
include<bits/stdc++.h>
using namespace std;
int main(){
int n,sum=0,num=1;
cin>>n;
for(int i=1;i<=n;i++){
num=1;
for(int j=1;j<=i;j++){
num=num*j;
}
sum=sum+num;
}
cout<<sum;
return 0;
}