您当前的位置:首页 > 计算机 > 编程开发 > Python

Python计算前n个自然数的阶乘和

时间:12-25来源:作者:点击数:

本文来源于粉丝私信的问题,目的在于计算result = 1!+2!+3!+...+n!,因为代码比较简单,没加注释,有问题可以留言交流。文中给出了2段代码,在实际使用时应优先考虑使用第一段,第二段仅用来验证,涉及大量重复计算,效率极低。

def factorialBefore(n):

    result, t = 1, 1

    for i in range(2, n+1):

        t *= i

        result += t

    return result

def verify(n):

    from math import factorial

    result = 0

    for i in range(1, n+1):

        result += factorial(i)

    return result

from random import randrange

for i in range(10000):

    n = randrange(1, 1000)

    if factorialBefore(n) != verify(n):

        print(n, 'error')

运行结果:无输出,表示两段代码计算结果一致。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门