问题描述

“从键盘输入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。编写时注意符号的使用,不能漏用。在写此类题时,只需关注常见代码的注意事项再稍加细心即可。