def factorial(n): result = 1 for i in range(1, n + 1): result *= i return resultdef factorial_sum(n): result = 0 for i in range(1, n + 1): result += factorial(i) return resultn = int(input("请输入一个正整数:"))print(format(n, factorial_sum(n)))
时间: 2024-01-05 16:04:26 浏览: 127
输入一个正整数n,求输出为分数形式
5星 · 资源好评率100%
这段代码是有问题的,format方法的参数应该是一个字符串,而不是两个数字。应该将输出语句改为:
```
n = int(input("请输入一个正整数:"))
print("{}到{}的阶乘之和为:{}".format(1, n, factorial_sum(n)))
```
这样就能正确输出1到n的阶乘之和了。
阅读全文