如何用PYTHON的递归算法表示阶乘

 时间:2026-02-12 16:25:19

1、打开JUPYTER NOTEBOOK,新建一个空白的PY文档。

如何用PYTHON的递归算法表示阶乘

2、n! = 1 x 2 x 3 x ... x n

这个是阶乘factorial的表示法

如何用PYTHON的递归算法表示阶乘

3、def factorial(n):

我们可以运用函数来定义这个阶乘。

如何用PYTHON的递归算法表示阶乘

4、def factorial(n):

我们要理解n! = n * (n - 1)!

如何用PYTHON的递归算法表示阶乘

5、def factorial(n):

    return n * factorial(n - 1)

这里设置一下返回的数值。

如何用PYTHON的递归算法表示阶乘

6、def factorial(n):

    return n * factorial(n - 1)

factorial(3)

这里出错了,因为我们没有设置暂停的条件。

如何用PYTHON的递归算法表示阶乘

7、def factorial(n):

    if n == 1:

        return 1

    return n * factorial(n - 1)

factorial(3)

增加一个条件就可以运行正确了。

如何用PYTHON的递归算法表示阶乘

8、def factorial(n):

    if n == 1: #基线条件

        return 1

    return n * factorial(n - 1) #递归条件

factorial(3)

这里要区分一下两个条件的作用。

如何用PYTHON的递归算法表示阶乘

9、def factorial(n):

    if n == 1:

        return 1

    return str(n) + " * " + str(factorial(n - 1))

factorial(3)

字符串的表示方法更加清晰。

如何用PYTHON的递归算法表示阶乘

10、'''

factorial(3)

3 * factorial(3 - 1)

3 * factorial(2)

3 * 2 * factorial (2 - 1)

3 * 2 * factorial (1)

3 * 2 * 1

'''

这里是实际运行的情况。

如何用PYTHON的递归算法表示阶乘

  • NI Multisim如何关闭未选择全部则通知?
  • Mathematica基础——Boole
  • web前端初学--头部和导航
  • python如何遍历字典、字典键、字典值?
  • Mathematica基础——内置判定函数
  • 热门搜索
    阿门是什么意思 右耳耳鸣是什么原因 ph是什么意思 i miss you是什么意思 什么是缓刑 broken是什么意思 web是什么 股票带r是什么意思 虾与什么食物相克 guess是什么意思