English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Python 基础教程

Python 流程控制

الوظائف في Python

أنواع البيانات في Python

Python 文件操作

Python 对象和类

Python 日期和时间

Python 高级知识

Python 参考手册

Python 程序使用递归求数字的阶乘

Python 实例大全

在此程序中,您将学习使用递归函数求数字的阶乘。

要理解此示例,您应该了解以下Python编程主题:

一个数字的阶乘是从1到该数字的所有整数的乘积。

例如,阶乘6是1*2*3*4*5*6 = 720。没有为负数定义阶乘,零阶的阶乘是1、0!= 1。

源代码

# Python 程序使用递归求数字的阶乘
def recur_factorial(n):
   if n == 1:
       return n
   else:
       return n*recur_factorial(n-1)
num = 7
# 检查数字是否为负
if num < 0:
   print("抱歉,负数的阶乘不存在")
elif num == 0:
   print("0的阶乘是1")
else:
   print(num, "的阶乘为 ", recur_factorial(num))

输出结果

7 的阶乘为 5040

注意:要查找其他数字的阶乘,请更改num的值。

在此处,数字存储在num中。该数字将传递给recur_factorial()函数以计算该数字的阶乘。

Python 实例大全