1 REM Ins{nt av 266
10 REM Ins{nt av medlem 266
20 REM
30 REM Snabbt sorteringsprogram - Minneskr{vande - men {nd}!
40 REM
50 REM Sorteringsprogrammet b|rjar p} rad 280. Rad 200-275 {r ett
60 REM d}ligt exempel. [ven tal kan sorteras i t.ex. A%(N%)
70 REM
80 REM
90 REM
200 ; CHR$(12%)
205 RANDOMIZE
210 N%=1000%
215 DIM A$(N%)=20%
220 FOR H%=1% TO N%
225 X$='' : FOR K%=1% TO 5%
230 V%=RND*10%
235 V1%=RND*100% : IF V1%<65% OR V1%>93% 235
240 X$=X$+STRING$(V%,V1%) : IF LEN(X$)>20% 250
245 NEXT K% : IF LEN(X$)<19% THEN A$(H%)=X$ : GOTO 255
250 A$(H%)=LEFT$(X$,19%)
255 NEXT H%
260 GET X$
265 GOSUB 280
270 FOR H%=1% TO N% : ; H%,A$(H%) : GET X$ : NEXT H%
275 END
280 F%=1% : L%(1%)=1% : R%(1%)=N%
285 L%=L%(F%) : R%=R%(F%) : F%=F%-1%
290 I%=L% : J%=R%
295 REM J[MF\RELSEELEMENT
300 C$=A$(L%)
305 REM J[MF\R
310 IF A$(I%)>=C$ 315 ELSE I%=I%+1% : GOTO 310
315 IF A$(J%)<=C$ 320 ELSE J%=J%-1% : GOTO 315
320 IF I%>J% 340
325 REM BYT
330 Y$=A$(I%) : A$(I%)=A$(J%) : A$(J%)=Y$
335 I%=I%+1% : J%=J%-1%
340 IF I%<=J% 310
345 REM INDEX
350 IF J%-L%>=R%-I% 375
355 IF I%>=R% 365
360 F%=F%+1% : L%(F%)=I% : R%(F%)=R%
365 R%=J%
370 GOTO 390
375 IF L%>=J% 385
380 F%=F%+1% : L%(F%)=L% : R%(F%)=J%
385 L%=I%
390 IF L%