汉诺塔是一个数学难题,其问题描述为如何将所有圆盘从A移到C。请用Python编写一个汉诺塔移动函数,采用递归方法解决该问题,要求输入汉诺塔的层数,输出整个移到流程。
import sys
sys.setrecursionlimit(1000000)
"""因为python有默认的最大递归深度,若想拓宽深度
则应加上以上代码,括号内为自定义的递归深度,若不加则在输入1010时程序会报错"""
a=eval(input("请输入汉诺塔的层数"))
#eval也可换为int
def Hanoi(a):
if a==1:
print("A-->C")
else:
print("A-->B")
Hanoi(a-1)
print("B-->C")
Hanoi(a)