00000000: 30 30 31 30 20 D0 D2 CF C3 20 53 4F 52 54 49 45 |0010 .... SORTIE|
00000010: 52 45 4E 28 D2 C5 C6 20 45 4C 45 4D 45 4E 54 24 |REN(... ELEMENT$|
00000020: 28 29 2C 4C 49 4E 4B 53 2C 52 45 43 48 54 53 2C |(),LINKS,RECHTS,|
00000030: 4C 41 45 4E 47 45 29 20 C3 CC CF D3 C5 C4 0D 30 |LAENGE) .......0|
00000040: 30 32 30 20 20 20 C4 C9 CD 20 4D 49 54 54 45 24 |020 ... MITTE$|
00000050: 20 CF C6 20 4C 41 45 4E 47 45 2C 20 5A 57 49 53 | .. LAENGE, ZWIS|
00000060: 43 48 45 4E 53 50 45 49 43 48 45 52 24 20 CF C6 |CHENSPEICHER$ ..|
00000070: 20 4C 41 45 4E 47 45 0D 30 30 33 30 20 20 20 42 | LAENGE.0030 B|
00000080: 45 52 45 49 43 48 28 4C 49 4E 4B 53 2C 52 45 43 |EREICH(LINKS,REC|
00000090: 48 54 53 2C 4C 49 4E 4B 53 2C 52 45 43 48 54 53 |HTS,LINKS,RECHTS|
000000A0: 29 0D 30 30 34 30 20 20 20 D0 D2 CF C3 20 42 45 |).0040 .... BE|
000000B0: 52 45 49 43 48 28 4C 49 4E 4B 53 2C 52 45 43 48 |REICH(LINKS,RECH|
000000C0: 54 53 2C 4C 49 2C 52 45 29 20 0D 30 30 35 30 20 |TS,LI,RE) .0050 |
000000D0: 20 20 20 20 4D 49 54 54 45 24 3A 3D 45 4C 45 4D | MITTE$:=ELEM|
000000E0: 45 4E 54 24 28 28 4C 49 4E 4B 53 2B 52 45 43 48 |ENT$((LINKS+RECH|
000000F0: 54 53 29 20 C4 C9 D6 20 32 29 0D 30 30 36 30 20 |TS) ... 2).0060 |
00000100: 20 20 20 20 D2 C5 D0 C5 C1 D4 20 0D 30 30 37 30 | ...... .0070|
00000110: 20 20 20 20 20 20 20 D7 C8 C9 CC C5 20 45 4C 45 | ..... ELE|
00000120: 4D 45 4E 54 24 28 4C 49 29 3C 4D 49 54 54 45 24 |MENT$(LI)<MITTE$|
00000130: 20 C4 CF 20 4C 49 3A 2B 31 0D 30 30 38 30 20 20 | .. LI:+1.0080 |
00000140: 20 20 20 20 20 D7 C8 C9 CC C5 20 4D 49 54 54 45 | ..... MITTE|
00000150: 24 3C 45 4C 45 4D 45 4E 54 24 28 52 45 29 20 C4 |$<ELEMENT$(RE) .|
00000160: CF 20 52 45 3A 2D 31 0D 30 30 39 30 20 20 20 20 |. RE:-1.0090 |
00000170: 20 20 20 C9 C6 20 4C 49 3D 52 45 20 D4 C8 C5 CE | .. LI=RE ....|
00000180: 0D 30 31 30 30 20 20 20 20 20 20 20 20 20 54 41 |.0100 TA|
00000190: 55 53 43 48 45 28 45 4C 45 4D 45 4E 54 24 28 4C |USCHE(ELEMENT$(L|
000001A0: 49 29 2C 45 4C 45 4D 45 4E 54 24 28 52 45 29 29 |I),ELEMENT$(RE))|
000001B0: 0D 30 31 31 30 20 20 20 20 20 20 20 20 20 4C 49 |.0110 LI|
000001C0: 3A 2B 31 3B 20 52 45 3A 2D 31 0D 30 31 32 30 20 |:+1; RE:-1.0120 |
000001D0: 20 20 20 20 20 20 C5 CE C4 C9 C6 20 0D 30 31 33 | ..... .013|
000001E0: 30 20 20 20 20 20 D5 CE D4 C9 CC 20 52 45 3C 4C |0 ..... RE<L|
000001F0: 49 0D 30 31 34 30 20 20 20 20 20 C9 C6 20 4C 49 |I.0140 .. LI|
00000200: 4E 4B 53 3C 52 45 20 D4 C8 C5 CE 20 42 45 52 45 |NKS<RE .... BERE|
00000210: 49 43 48 28 4C 49 4E 4B 53 2C 52 45 2C 52 45 43 |ICH(LINKS,RE,REC|
00000220: 48 54 53 2C 52 45 29 0D 30 31 35 30 20 20 20 20 |HTS,RE).0150 |
00000230: 20 C9 C6 20 4C 49 3C 52 45 43 48 54 53 20 D4 C8 | .. LI<RECHTS ..|
00000240: C5 CE 20 42 45 52 45 49 43 48 28 4C 49 2C 52 45 |.. BEREICH(LI,RE|
00000250: 43 48 54 53 2C 4C 49 2C 52 45 43 48 54 53 29 0D |CHTS,LI,RECHTS).|
00000260: 30 31 36 30 20 20 20 C5 CE C4 D0 D2 CF C3 20 42 |0160 ....... B|
00000270: 45 52 45 49 43 48 0D 30 31 37 30 20 20 20 D0 D2 |EREICH.0170 ..|
00000280: CF C3 20 54 41 55 53 43 48 45 28 D2 C5 C6 20 41 |.. TAUSCHE(... A|
00000290: 24 2C D2 C5 C6 20 42 24 29 20 0D 30 31 38 30 20 |$,... B$) .0180 |
000002A0: 20 20 20 20 5A 57 49 53 43 48 45 4E 53 50 45 49 | ZWISCHENSPEI|
000002B0: 43 48 45 52 24 3A 3D 41 24 3B 20 41 24 3A 3D 42 |CHER$:=A$; A$:=B|
000002C0: 24 3B 20 42 24 3A 3D 5A 57 49 53 43 48 45 4E 53 |$; B$:=ZWISCHENS|
000002D0: 50 45 49 43 48 45 52 24 0D 30 31 39 30 20 20 20 |PEICHER$.0190 |
000002E0: C5 CE C4 D0 D2 CF C3 20 54 41 55 53 43 48 45 0D |....... TAUSCHE.|
000002F0: 30 32 30 30 20 C5 CE C4 D0 D2 CF C3 20 53 4F 52 |0200 ....... SOR|
00000300: 54 49 45 52 45 4E 0D |TIEREN. |
0010 PROC SORTIEREN(REF ELEMENT$(),LINKS
,RECHTS,LAENGE) CLOSED.0020 DIM MITTE$
OF LAENGE, ZWISCHENSPEICHER$ OF LAENGE.
0030 BEREICH(LINKS,RECHTS,LINKS,RECHTS
).0040 PROC BEREICH(LINKS,RECHTS,LI,RE
) .0050 MITTE$:=ELEMENT$((LINKS+RECH
TS) DIV 2).0060 REPEAT .0070 W
HILE ELEMENT$(LI)<MITTE$ DO LI:+1.0080
WHILE MITTE$<ELEMENT$(RE) DO RE:-1.
0090 IF LI=RE THEN.0100 TA
USCHE(ELEMENT$(LI),ELEMENT$(RE)).0110
LI:+1; RE:-1.0120 ENDIF .013
0 UNTIL RE<LI.0140 IF LINKS<RE T
HEN BEREICH(LINKS,RE,RECHTS,RE).0150
IF LI<RECHTS THEN BEREICH(LI,RECHTS,LI,
RECHTS).0160 ENDPROC BEREICH.0170 PR
OC TAUSCHE(REF A$,REF B$) .0180 ZWIS
CHENSPEICHER$:=A$; A$:=B$; B$:=ZWISCHENS
PEICHER$.0190 ENDPROC TAUSCHE.0200 END
PROC SORTIEREN.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL