Hanoi Tower programming challenge...
Alex Tweedly
alex at tweedly.net
Thu Jul 19 19:18:52 EDT 2012
Sorry if this is a duplicate - I think the original got caught because I
sent it from the wrong address .... you can save 2 lines by using a
function rather than a handler (watch for line wraps)
on mouseUp
ask "How many disks are there?"
put tower (it , "A", "B" , "C") into field 1
end mouseUp
function tower N, start, destination, spare
if N = 0 then return ""
return tower (N - 1, start, spare, destination) & "Move " & N & "
from "& start & " to "& destination & cr & tower (N - 1, spare,
destination, start)
end tower
-- Alex
On 19/07/2012 11:59, Jim Hurley wrote:
>
> How about this? I think this is the classic recursive solution.
>
> Jim Hurley
>
>
> on mouseUp
> ask "How many disks are there?"
> tower it , "A", "B" , "C"
> end mouseUp
>
> on tower N, start, destination, spare
> if N = 0 then exit tower
> tower N - 1, start, spare, destination
> put "Move "& N& " from"& start& " to"& destination& cr after field 1
> tower N - 1, spare, destination, start
> end tower
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list