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

Tell us what’s happening:

My code is correct, but it’s still showing the error for some reason and I’m not understanding what to do?

Someone please help.

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

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, so they are out of the way
        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)
        
        # move the n - 1 disks that we left on auxiliary onto 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/136.0.0.0 Safari/537.36

Challenge Information:

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

1 Like

print only A B and C, and also this

2 Likes

Hi @NJ0093 and welcome to our community!

You have lost the new line character from the end of this print call:

Also, you need only print the variables. You do not need to include ‘A:’ etc.

Yup, got it. Thank you.

Got it bud, thank you

1 Like

For anyone wondering about the printcall, it should be something like this

print(A,B,C,‘\n’)

Happy Coding!! :wink:

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