python汉诺塔算法如何添加统计移动次数的代码?
发布网友
发布时间:2022-05-06 09:58
我来回答
共2个回答
热心网友
时间:2022-04-18 04:12
方案1:命令窗口运行文件方式
s=0
def move(n,a,b,c):
global s
if n==1:
s=s+1
print(a,'-->',c)
return
move(n-1,a,c,b)
move(1,a,b,c)
move(n-1,b,a,c)
n = int(input('num: '))
move(n,'A','B','C')
print('total: %s'%s)
方案2:交互模式(建立函数文件jichu.py,在交互窗口调用文件中函数move)
s=0
def move(n,a,b,c):
global s
if n==1:
s=s+1
print(a,'-->',c,'\t%s' % s)
return
move(n-1,a,c,b)
move(1,a,b,c)
move(n-1,b,a,c)
热心网友
时间:2022-04-18 05:30
建议复习一下关于变量的生命周期。这里Num函数中的i在每次Num调用的时候重新赋值并加一打印,最后函数调用完成,i变量被释放。
把Num函数改成下面:
i = 0
def Num():
global i
i=i+1
print('cishu',i)