Towers of Hanoi: Difference between revisions

Content deleted Content added
No edit summary
Line 109: Line 109:
: middle ." middle" ;
: middle ." middle" ;
: print ( t f -- )
CR ." Move disk from " execute ." to " execute ;
: move-disk ( v t f n -- v t f )
: move-disk ( v t f n -- v t f )
dup 1 = if drop 2dup print exit then
dup 0= if drop exit then
1- >R
1- >R
rot swap R@ ( t v f n-1 ) recurse
rot swap R@ ( t v f n-1 ) recurse
rot swap 2dup print
rot swap
2dup cr ." Move disk from " execute ." to " execute
swap rot R> ( f t v n-1 ) recurse
swap rot R> ( f t v n-1 ) recurse
swap rot ;
swap rot ;