【GPLT】L1-013 计算阶乘和

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42449444/article/details/88591353

题目描述:

对于给定的正整数N,需要你计算 S=1!+2!+3!+...+N!。

输入格式:

输入在一行中给出一个不超过10的正整数N。

输出格式:

在一行中输出S的值。

输入样例:

代码语言:javascript
复制
3

输出样例:

代码语言:javascript
复制
9

解题思路:

自定义一个fun()函数用来求解n!,然后无脑for循环累加1~n!的和输出即可。

AC代码:

代码语言:javascript
复制
#include <bits/stdc++.h>

using namespace std;

int fun(int n) //用来求n!
{
int sum = 1;
for(int i = 1; i <= n; i++)
{
sum *= i;
}
return sum;
}

int main()
{
int N;
cin >> N;
int sum = 0;
for (int i = 1; i <= N; i++) //累加1~N!
{
sum += fun(i);
}
cout << sum << endl;
return 0;
}