欢迎访问宙启技术站
智能推送

如何在Python中计算数字的阶乘

发布时间:2024-01-13 09:07:14

在Python中,可以使用循环或递归的方式来计算数字的阶乘。

1. 使用循环计算阶乘:

def factorial_iterative(n):
    result = 1
    for i in range(1, n+1):
        result *= i
    return result

# 使用例子:
print(factorial_iterative(5))  # 输出:120
print(factorial_iterative(10))  # 输出:3628800

2. 使用递归计算阶乘:

def factorial_recursive(n):
    if n == 0:
        return 1
    return n * factorial_recursive(n-1)

# 使用例子:
print(factorial_recursive(5))  # 输出:120
print(factorial_recursive(10))  # 输出:3628800

在上述代码中,factorial_iterative函数使用了一个循环来累乘从1到n的数字,最后返回结果。factorial_recursive函数则通过递归调用自身来计算阶乘,当n为0时直接返回1,否则返回n * factorial_recursive(n-1)

使用例子展示了分别计算了5和10的阶乘,结果分别为120和3628800。

无论是使用循环还是递归的方式,计算阶乘的过程都是相似的:从1开始,累乘到n,在遇到特定的基准情况时终止递归调用。这样,我们就可以用Python来计算任意数字的阶乘了。