Learn Recursion by Solving the Tower of Hanoi Puzzle - Step 52

Tell us what’s happening:

I don’t understand what’s the issue when the output is same in both the cases when rods was used and not used

Your code so far


# User Editable Region

NUMBER_OF_DISKS = 4
A = list(range(NUMBER_OF_DISKS, 0, -1))  
B = []
C = []

def move(n, source, auxiliary, target):
    if n > 0:
        # move n - 1 disks from source to auxiliary
        move(n - 1, source, target, auxiliary)
        
        # move the nth disk from source to target
        target.append(source.pop())
        
        # display our progress
        print('A:', A, 'B:', B, 'C:', C, '\n')
        
        # move the n - 1 disks from auxiliary to target
        move(n - 1, auxiliary, source, target)

# initiate call from source A to target C with auxiliary B
move(NUMBER_OF_DISKS, A, B, C)


# User Editable Region

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0

Challenge Information:

Learn Recursion by Solving the Tower of Hanoi Puzzle - Step 52

Hi @Suvie

You should modify your print() call to print A, B, C, instead of the rods object. Keep the newline character in the print() call.

For this step, you also need to remove the strings.

Happy coding

1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.