python中写一个求阶乘的函数

 

1、利用迭代

复制代码
def fun(n):             ## 定义求阶乘函数
    result = 1
    for i in range(1,n + 1):
        result *= i
    return result

n = int(input("please input the number:"))    ## 指定用户输入
result = fun(n)

print("%d的阶乘是:%d" % (n,result))        ## 输出结果
复制代码
please input the number:4
4的阶乘是:24

 

2、递归

递归:从原理上来说就是函数调用自身的行为。在函数内部可以调用所有可见的函数,当然也包括它自己。

复制代码
def fun(n):
    if n == 1:                 ## 终止信号(返回条件)
        return 1
    else:
        return n * fun(n - 1)     ## 调用函数本身

n = int(input("please input the number:"))
result = fun(n)

print("%d 的阶乘是:%d" % (n,result))
复制代码
please input the number:3
3 的阶乘是:6

 

递归的两个条件:

(1)、调用函数本身

(2)、设置了正确的返回条件 

 

posted @   小鲨鱼2018  阅读(6348)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示