import sys
sys.setrecursionlimit(100)
def fac1(n):
res = 1
for i in range(1, n+1):
res *= i
return res
def fac2(n):
if n == 1:
return 1
else:
return n * fac2(n-1)
print("fac1(5) = %d" % fac1(5))
print("fac2(5) = %d" % fac2(5))
def fibo1(n):
a1 = 1
a2 = 1
a3 = 1
for i in range(n-2):
a3 = a1 + a2
a1 = a2
a2 = a3
return a3
def fibo2(n):
if n == 1 or n == 2:
return 1
else:
return fibo2(n-1) + fibo2(n-2)
print("fibo1(10) = %d" % fibo1(10))
print("fibo2(10) = %d" % fibo2(10))
def hanoi(n, initial, idle, target):
if(n == 1):
print(initial, " --> ", target)
else:
hanoi(n-1, initial, target, idle)
print(initial, " --> ", target)
hanoi(n-1, idle, initial, target)
print("The solution of Hanoi Tower 3 is:")
hanoi(3, "A", "B", "C")