使用Python编程计算阶乘

时间:2020-02-23 14:42:16  来源:igfitidea点击:

在开始使用Python实现阶乘之前,让我们首先讨论数字阶乘的含义。

从理论上讲,数字的阶乘定义为所有小于或者等于该数字的正整数的乘积。
当然," n!"代表整数" n"的阶乘。
例如,让我们看一下数字6的阶乘

6! = 6 * 5 * 4 * 3 * 2 * 1

可以遵循以下技术来确定整数的阶乘。

  • 使用循环
  • 使用递归函数调用
  • 使用数学模块中的预定义函数" factorial()"

在Python中使用循环

以下代码说明了如何在Python编程中使用for循环来计算给定数字的阶乘。

n=9
fact=1
for i in range(2,n+1):
  fact=fact*i
print("The factorial of ",n," is: ",fact)

输出:

The factorial of 9 is: 362880

在Python中使用递归函数调用

同样,我们也可以使用递归函数来计算给定数字的阶乘。
让我们看看

n=9
def fact(n):
  if(n==1 or n==0):
      return 1
  else:
      return n*fact(n-1)

print("The factorial of ",n," is: ",fact(n))

输出

The factorial of 9 is: 362880

在Python中使用Math模块中的factorial()方法

数学模块提供了一种简单的方法来计算任何正整数的阶乘。
当然,该模块带有预定义的方法" factorial()",该方法以整数作为参数并返回数字的阶乘。
让我们看一下如何使用预定义的方法,然后找到阶乘。
下面给出的代码描述了如何使用" factorial()"方法

import math
n=9
print("The factorial of ",n," is: ",math.factorial(n))

输出:

The factorial of 9 is: 362880

此外,对于所有上述技术,我们都使用了整数" n"的预定义值。
也可以使用户输入" n"。
将" n = 9"行替换为:

n=int(input("Enter the number for calculating factorial"))