00000000: 39 30 30 30 20 50 52 4F 43 20 53 48 45 4C 4C 53 |9000 PROC SHELLS|
00000010: 4F 52 54 28 52 45 46 20 41 28 29 2C 4D 2C 4E 29 |ORT(REF A(),M,N)|
00000020: 20 43 4C 4F 53 45 44 0D 39 30 31 30 20 50 3A 3D | CLOSED.9010 P:=|
00000030: 4E 0D 39 30 32 30 20 57 48 49 4C 45 20 50 3E 31 |N.9020 WHILE P>1|
00000040: 20 44 4F 0D 39 30 33 30 20 50 3A 3D 50 20 44 49 | DO.9030 P:=P DI|
00000050: 56 20 32 0D 39 30 34 30 20 52 45 50 45 41 54 20 |V 2.9040 REPEAT |
00000060: 0D 39 30 35 30 20 44 3A 3D 54 52 55 45 0D 39 30 |.9050 D:=TRUE.90|
00000070: 36 30 20 46 4F 52 20 4A 3A 3D 4D 20 54 4F 20 4E |60 FOR J:=M TO N|
00000080: 2D 50 20 44 4F 0D 39 30 37 30 20 49 3A 3D 4A 2B |-P DO.9070 I:=J+|
00000090: 50 0D 39 30 38 30 20 49 46 20 41 28 4A 29 3E 41 |P.9080 IF A(J)>A|
000000A0: 28 49 29 20 54 48 45 4E 0D 39 30 39 30 20 53 57 |(I) THEN.9090 SW|
000000B0: 41 50 28 41 28 49 29 2C 41 28 4A 29 29 0D 39 31 |AP(A(I),A(J)).91|
000000C0: 30 30 20 44 3A 3D 46 41 4C 53 45 0D 39 31 31 30 |00 D:=FALSE.9110|
000000D0: 20 45 4E 44 49 46 20 0D 39 31 32 30 20 45 4E 44 | ENDIF .9120 END|
000000E0: 46 4F 52 20 4A 0D 39 31 33 30 20 55 4E 54 49 4C |FOR J.9130 UNTIL|
000000F0: 20 44 0D 39 31 34 30 20 45 4E 44 57 48 49 4C 45 | D.9140 ENDWHILE|
00000100: 20 0D 39 31 35 30 20 45 4E 44 50 52 4F 43 20 53 | .9150 ENDPROC S|
00000110: 48 45 4C 4C 53 4F 52 54 0D |HELLSORT. |
9000 PROC SHELLSORT(REF A(),M,N) CLOSED.
9010 P:=N.9020 WHILE P>1 DO.9030 P:=P DI
V 2.9040 REPEAT .9050 D:=TRUE.9060 FOR J
:=M TO N-P DO.9070 I:=J+P.9080 IF A(J)>A
(I) THEN.9090 SWAP(A(I),A(J)).9100 D:=FA
LSE.9110 ENDIF .9120 ENDFOR J.9130 UNTIL
D.9140 ENDWHILE .9150 ENDPROC SHELLSORT
.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL