Python程序:找到一个数的阶乘(不使用递归)

Python程序:找到一个数的阶乘(不使用递归)

阶乘是数学中一个很常见的概念,表示一个数的乘积,通常用一个感叹号“!”来表示。例如5的阶乘就是5! = 5 * 4 * 3 * 2 * 1 = 120。

在Python中,我们可以使用循环来计算一个数的阶乘,而不必使用递归。下面是一个简单的示例代码:

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

print(factorial(5)) # 输出:120

在上面的示例代码中,我们定义了一个函数factorial,接收一个整数参数n。在函数中,我们使用一个for循环来计算n的阶乘,并将结果存储在result中,最后返回result

我们可以通过调用factorial函数来计算任意数的阶乘,例如:print(factorial(10))会输出3628800,即10的阶乘。

这种方法的时间复杂度是O(n),空间复杂度为O(1),具有很好的效率。

与此同时,我们也可以手动输入计算的数,示例代码如下:

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

n = int(input("请输入一个正整数:"))
print("%d的阶乘是%d" % (n, factorial(n)))

在上面的示例代码中,我们使用了Python的input函数来读取一个正整数,并将其存储在变量n中。然后,我们调用factorial函数来计算n的阶乘,并使用字符串格式化来输出结果。

我们可以输入任意正整数来计算其阶乘,例如:当我们输入5时,会输出5的阶乘是120

结论

在Python中,我们可以使用循环来计算一个数的阶乘,这比使用递归更加高效且容易理解。我们可以使用函数来封装计算逻辑,也可以手动输入计算的数,从而实现各种需求。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程