Towers of Hanoi: Difference between revisions
Content added Content deleted
(→{{header|UNIX Shell}}: make portable to other shells) |
(→Using GOSUBs: Fix stack depth.) |
||
Line 1,041: | Line 1,041: | ||
{{works with|Commodore BASIC}} |
{{works with|Commodore BASIC}} |
||
{{works with|GW-BASIC}} |
{{works with|GW-BASIC}} |
||
<lang gwbasic>10 |
<lang gwbasic>10 DEPTH=4: REM SHOULD EQUAL NUMBER OF DISKS |
||
20 |
20 DIM N(DEPTH), F(DEPTH), T(DEPTH), V(DEPTH): REM STACK PER PARAMETER |
||
30 |
30 SP = 0: REM STACK POINTER |
||
40 |
40 N(SP) = 4: REM START WITH 4 DISCS |
||
50 |
50 F(SP) = 1: REM ON PEG 1 |
||
60 |
60 T(SP) = 2: REM MOVE TO PEG 2 |
||
70 V(SP) = 3: REM VIA PEG 3 |
|||
70 GOSUB 100 |
|||
80 |
80 GOSUB 100 |
||
90 END |
|||
99 REM MOVE SUBROUTINE |
|||
100 IF N(SP) = 0 THEN RETURN |
100 IF N(SP) = 0 THEN RETURN |
||
110 OS = SP: REM STORE STACK POINTER |
110 OS = SP: REM STORE STACK POINTER |