Python 遞迴例項
阿新 • • 發佈:2019-01-09
用for 迴圈迭代方式實現階乘
#!/usr/bin/python
def factorial(n):
result = n
for i in range(1,n):
result *= i
return result
number = int(input('請輸入正整數:'))
result = factorial(number)
print('%d的階乘是:%d' %(number,result))
直接用遞迴的方式實現階乘
def factorial1(n): if n == 1: return 1 else: return n * factorial1(n-1) number = int(input('請輸入一個正整數:')) result = factorial1(number) print("%d的階乘是:%d" %(number,result))
###漢諾塔
#!/usr/bin/python def hanoi(n,x,y,z): if n == 1: print(x,'--->',z) else: hanoi(n-1,x,z,y)###將前n-1個盤子從x移動到y上 print(x,'--->',z) ####將最底下的最後一個盤子從x移動到z上 hanoi(n-1,y,x,z)###將y上的n-1個盤子移動到z 上 n = int(input("請輸入漢諾塔的層數:")) hanoi(n,'x','y','z')