jhg22334 2021-02-07 17:18 采纳率: 80%
浏览 27
已采纳

哪位大佬可以帮忙看看大整数阶乘哪里不对

n = int(input())
a = [1]+[0 for i in range(1000)]
up = 0
for i in range(2,n+1):
    for j in range(1,1000):
        temp = a[j]*i + up
        up = temp/10           ##进位
        a[j] = temp % 10
m = 1000
while m > 0:
    if a[m] != 0:
        while n > 0:
            print(a[n])
            n -= 1
    m -= 1
  • 写回答

1条回答 默认 最新

  • 天中云雾 2021-02-15 21:22
    关注
    a = 1000 #数值任意调整
    b = 1
    for x in range(2, a + 1):
        b = b * x
    print(b)

    简洁多了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?