美文网首页
python练习_day13

python练习_day13

作者: 宗肃書 | 来源:发表于2022-10-10 09:29 被阅读0次

[汉诺塔]
请编写move(n, a, b, c)函数,它接收参数n,表示3个柱子A、B、C中第1个柱子A的盘子数量,然后打印出把所有盘子从A借助B移动到C的方法

def mov(n,a,b,c):
    if n==1:
        print(a,'-->',c)
    if n==2:
        print(a,'-->',b)
        print(a,'-->',c)
        print(b,'-->',c)
    if n>2:
        mov(n-1,a,c,b) #调用之前的函数,并且互换初始,中继,终点的位置
        print(a,'-->',c)
        mov(n-1,b,a,c) #当n=3时重复n=2时的步骤,只不过此时需要把b当成起始柱子
    return
print("请输入盘子数目n:")
n=int(input())
a,b,c='A','B','C'
mov(n,a,b,c)

相关文章

网友评论

      本文标题:python练习_day13

      本文链接:https://www.haomeiwen.com/subject/ctrbartx.html