Python阶乘求和:计算1!+2!+...+n!
Python实现阶乘求和:计算1! + 2! + ... + n!
本篇博客将带你使用Python编写程序,计算从1到n的阶乘之和。
程序目标:
用户输入一个整数n,程序计算并输出1! + 2! + ... + n! 的值。
代码示例:
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
n = int(input('please input an integer: '))
sum = 0
for i in range(1, n+1):
sum += factorial(i)
print('1! + 2! + ... + %d! = %d' % (n, sum))
代码解读:
-
factorial(n)函数:- 该函数使用递归的方式计算n的阶乘。
- 当n为0时,返回1 (0! = 1)。
- 当n大于0时,返回 n * (n-1)!,递归调用自身计算(n-1)的阶乘。
-
主程序部分:
- 首先,程序提示用户输入一个整数,并将其存储在变量
n中。 - 接着,初始化变量
sum为0,用于存储阶乘的累加和。 - 使用
for循环遍历从1到n的所有整数i。 - 在循环内部,调用
factorial(i)计算i的阶乘,并将结果加到sum中。 - 最后,程序打印输出最终的阶乘和。
- 首先,程序提示用户输入一个整数,并将其存储在变量
注意事项:
- 该代码假设用户输入的n为非负整数。
- 为了增强程序的健壮性,可以添加输入合法性检查,例如判断用户输入是否为整数,以及是否为非负数。
希望这篇博客能够帮助你理解如何使用Python计算1!+2!+...+n!的值。通过学习递归函数和循环的使用,你可以编写更加灵活和高效的程序。
原文地址: https://www.cveoy.top/t/topic/PJc 著作权归作者所有。请勿转载和采集!