In: Computer Science
What code would I add to the following program to have it print out the runtime each time the program is used?
def moveTower(n, source, dest, temp):
if n == 1:
print("Move disk from", source, "to", dest+".")
else:
moveTower(n-1, source, temp, dest)
moveTower(1, source, dest, temp)
moveTower(n-1, temp, dest, source)
def hanoi(n):
moveTower(n, "A", "C", "B")
def main():
print("Towers of Hanoi")
n = int(input("How many disks? "))
moveTower(n, "A", "C", "B")
if __name__ == '__main__': main()
Corrected Python code:
#importing time library
import time
def moveTower(n,source,dest,temp):
if n==1:
print("Move disk from",source,"to",dest+".")
else:
moveTower(n-1,source,temp,dest)
moveTower(1,source,dest,temp)
moveTower(n-1,temp,dest,source)
def hanoi(n):
moveTower(n,"A","C","B")
def main():
#obtaining start time
s_time=time.time()
print("Towers of Hanoi")
n=int(input("How many disks? "))
moveTower(n,"A","C","B")
#printing current time-start time to obatin the runtime
print(str(time.time()-s_time)+" seconds")
if __name__ == '__main__': main()
Screenshot:
Output:
