Python求1到n的阶乘之和的实例

来自:网络
时间:2024-08-28
阅读:

Python求1到n的阶乘之和

问题描述

从键盘输入n,求1+2!+3!+...+n!的和

对于此题,我们可以用定义一个函数来解决,接着用一个for循环语句来设置从1到n,接下来一起来编写这个代码吧。

解决方案

假定这个函数名称为f

def f(x):
f = 1
for i in range(1,x+1):
f *= i
return f
n = int(input(“请输入正整数:”))
print(“和为:%d“ % sum(map(f,range(1,n+1))))

若输入正整数3,我们来运行一下。

Python求1到n的阶乘之和的实例

图3.1 运行流程

注:要注意return的使用,不能忽略

心得:

  • 在此代码中,我们需要知道for循环语句的使用以及定义def函数,注意我们要求的是1到n,按照左闭右开的规则,需要填写的是n+1,在函数后要记得写上return。
  • 最后将打印出来的会是一个整数所以需要用%d。编写时注意符号的使用,不能漏用。
  • 在写此类题时,只需关注常见代码的注意事项再稍加细心即可。

python求前n项的阶乘之和

从键盘输入一个整数n,求前n项的阶乘之和,1+2!+3!+…+n!的和

输入格式:

  • 输入一个大于1的整数。
  • 例如:输入20。

输出格式:

  • 输出一个整数。
  • 例如:2561327494111820313。

输入样例:

  • 在这里给出一组输入。
  • 例如:
  • 20

输出样例:

  • 在这里给出相应的输出。
  • 例如:
  • 2561327494111820313

python代码:

def f(n):
    ans = 1
    for i in range(1,n+1):
         ans *= i             #等价于ans = ans * 2
    return ans
n = int(input())
sum = 0
for i in range(1,n+1):
    sum += f(i)
print(sum)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

返回顶部
顶部