求1!+2!+3!+、、、+n!(用函数实现) 输入:5 输出:1!+2!+...+5!=153
时间: 2023-09-19 22:10:12 浏览: 31
以下是 Python 代码实现:
```python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
def sum_factorial(n):
sum = 0
for i in range(1, n+1):
sum += factorial(i)
return sum
n = int(input("请输入一个正整数:"))
result = sum_factorial(n)
print("1!+2!+...+{}!={}".format(n, result))
```
运行结果:
```
请输入一个正整数:5
1!+2!+...+5!=153
```
相关问题
用Python求1!+2!+3!+、、、+n!(用函数实现) 输入:5 输出:1!+2!+...+5!=153
可以使用递归函数来实现阶乘的计算,并用一个循环计算每个数的阶乘并累加求和。
代码如下:
```python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
def sum_factorials(n):
sum = 0
for i in range(1, n+1):
sum += factorial(i)
return sum
n = int(input("请输入一个整数:"))
print("1!+2!+...+%d! = %d" % (n, sum_factorials(n)))
```
输出结果:
```
请输入一个整数:5
1!+2!+...+5! = 153
```
用C语言编写函数fun,它的功能是:计算并输出下式的和:1!+2!+3!+4!+5!+…+n!。主函数输入n,调用fun输出1!+2!+3!+4!+5!+…+n!的值。
以下是用C语言编写的函数fun,它的功能是计算并输出1!+2!+3!+4!+5!+…+n!的和:
```c
#include <stdio.h>
int factorial(int num) {
int fact = 1;
for (int i = 1; i <= num; i++) {
fact *= i;
}
return fact;
}
int calculateSum(int n) {
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
return sum;
}
int main() {
int n;
printf("Enter the value of n: ");
scanf("%d", &n);
int result = calculateSum(n);
printf("The sum of 1!+2!+3!+4!+5!+...+n! is: %d\n", result);
return 0;
}
```
阅读全文