Python学习打卡--day44(基础练习:递归函数)

递归函数学习

如果一个函数在内部调用自身本身,这个函数就是递归函数。 在使用递归时,需要注意以下几点:
(1).自己调用自己。
(2).必须有一个明确的递归结束条件,称为递归出口。

"""
递归函数学习
在使用递归时,需要注意以下几点:
(1).自己调用自己。
(2).必须有一个明确的递归结束条件,称为递归出口。
"""


# 练习1:使用递归函数向控制台打印3,2,1
def print_num(num):
    print(num)
    if num == 1:
        return
    num = num - 1
    print_num(num)
    print("-----------")
print_num(3)

运行结果:

3
2
1
-----------
-----------
# 练习2:1~10的阶乘
def factorial(num):
    if num == 1:
        return 1
    return num * factorial(num - 1)


num = factorial(3)
print(num)

运行结果:

6
# 练习3:查找数字:通过程序查找输入的number值 1,2,3,4,5,6,7,8,9,10
def search_num(number, start, end):
    if number == start:
        return start
    else:
        # 获取中间值
        middle = (start + end) // 2  # 取中间的整数数字
        if middle <= number:
            return search_num(number, middle, end)
        else:
            return search_num(number, start, middle)


ret = search_num(2, 1, 5)
print(ret)

运行结果:

2

学习参考:https://blog.csdn.net/weixin_44239541/article/details/85837034

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值