Towers of Hanoi: Difference between revisions
Content added Content deleted
Drkameleon (talk | contribs) |
Not a robot (talk | contribs) (Add FOCAL) |
||
Line 1,928: | Line 1,928: | ||
[n;0>[n;1-n: @\ h;! @\ p;! \@ h;! \@ n;1+n:]?]h: { via to from } |
[n;0>[n;1-n: @\ h;! @\ p;! \@ h;! \@ n;1+n:]?]h: { via to from } |
||
4n:["right"]["middle"]["left"]h;!%%%</lang> |
4n:["right"]["middle"]["left"]h;!%%%</lang> |
||
=={{header|FOCAL}}== |
|||
<lang FOCAL>01.10 S N=4;S S=1;S V=2;S T=3 |
|||
01.20 D 2 |
|||
01.30 Q |
|||
02.02 S N(D)=N(D)-1;I (N(D)),2.2,2.04 |
|||
02.04 S D=D+1 |
|||
02.06 S N(D)=N(D-1);S S(D)=S(D-1) |
|||
02.08 S T(D)=V(D-1);S V(D)=T(D-1) |
|||
02.10 D 2 |
|||
02.12 S D=D-1 |
|||
02.14 D 3 |
|||
02.16 S A=S(D);S S(D)=V(D);S V(D)=A |
|||
02.18 G 2.02 |
|||
02.20 D 3 |
|||
03.10 T %1,"MOVE DISK FROM POLE",S(D) |
|||
03.20 T " TO POLE",T(D),!</lang> |
|||
{{out}} |
|||
<pre>MOVE DISK FROM POLE= 1 TO POLE= 2 |
|||
MOVE DISK FROM POLE= 1 TO POLE= 3 |
|||
MOVE DISK FROM POLE= 2 TO POLE= 3 |
|||
MOVE DISK FROM POLE= 1 TO POLE= 2 |
|||
MOVE DISK FROM POLE= 3 TO POLE= 1 |
|||
MOVE DISK FROM POLE= 3 TO POLE= 2 |
|||
MOVE DISK FROM POLE= 1 TO POLE= 2 |
|||
MOVE DISK FROM POLE= 1 TO POLE= 3 |
|||
MOVE DISK FROM POLE= 2 TO POLE= 3 |
|||
MOVE DISK FROM POLE= 2 TO POLE= 1 |
|||
MOVE DISK FROM POLE= 3 TO POLE= 1 |
|||
MOVE DISK FROM POLE= 2 TO POLE= 3 |
|||
MOVE DISK FROM POLE= 1 TO POLE= 2 |
|||
MOVE DISK FROM POLE= 1 TO POLE= 3 |
|||
MOVE DISK FROM POLE= 2 TO POLE= 3</pre> |
|||
=={{header|Forth}}== |
=={{header|Forth}}== |