天才程序员用递归
def test(n):
if n == 1:
return 1
else:
return n*test(n-1)
number = int(input('请输入一个正整数\n'))
result = test(number)
print('%d 的阶乘是 %d' % (number,result))
下面是汉诺塔的实现
def hanoi (n,a,b,c):
if n == 1:
print(a,'-->',c) 如果只有最后一个盘子,则直接从a到c
else:
hanoi(n-1,a,c,b) 现将前n-1个盘子移动到b
print(a,'-->',c)如果只有最后一个盘子,则直接从a到c
hanoi(n-1,b,a,c) 用递归方法将剩下的盘子再移动到C
n=int(input('汉诺塔层数\n'))
hanoi(n,'第一根','第二根','第三根')