in reply to Recursion: The Towers of Hanoi problem
Forgive me, but I'm not seeing how the last statements in the else loop get executed:
print "Move disk $num from $from to $to\n"; movedisks( $num-1, $aux, $to, $from );
I jotted down the steps with 3 discs on a piece of paper and this is how I saw it:
$numdisks = 3 movedisks( 3-1, A, C, B) movedisks( 2-1, A, B, C) print "Move disk 1 from A to B" for the base case
Shouldn't the last two statements be right outside the else block?
Neato problem, I didn't get it at first, but now I'm tempted to start my own 3-peg disc rotating habit. It all sounds very zen ;-)
In Section
Tutorials