开发者社区 问答 正文

求1+2!+3!+...+20!的和。

求1+2!+3!+...+20!的和。

展开
收起
珍宝珠 2019-11-19 15:55:14 3015 分享 版权
1 条回答
写回答
取消 提交回答
  • 方法一
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    n = 0
    s = 0
    t = 1
    for n in range(1,21):
        t *= n
        s += t
    print '1! + 2! + 3! + ... + 20! = %d' % s
    
    
    方法二
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    s = 0
    l = range(1,21)
    def op(x):
        r = 1
        for i in range(1,x + 1):
            r *= i
        return r
    s = sum(map(op,l))
    print '1! + 2! + 3! + ... + 20! = %d' % s
    
    

    以上实例输出结果为:

    1! + 2! + 3! + ... + 20! = 2561327494111820313
    
    2019-11-19 15:56:13
    赞同 展开评论
问答地址: