September Morn Update

This commit is contained in:
Ingy döt Net 2019-09-12 10:33:56 -07:00
parent 4e2d22a71d
commit aac6731f2c
6856 changed files with 141342 additions and 21127 deletions

View file

@ -0,0 +1,21 @@
DIM test(9)
test() = 4, 65, 2, -31, 0, 99, 2, 83, 782, 1
PROCinsertionsort(test(), 10)
FOR i% = 0 TO 9
PRINT test(i%) ;
NEXT
PRINT
END
DEF PROCinsertionsort(a(), n%)
LOCAL i%, j%, t
FOR i% = 1 TO n%-1
t = a(i%)
j% = i%
WHILE j%>0 AND t<a(ABS(j%-1))
a(j%) = a(j%-1)
j% -= 1
ENDWHILE
a(j%) = t
NEXT
ENDPROC

View file

@ -0,0 +1,8 @@
10 DIM A(10): N=9
11 REM GENERATE SOME RANDOM NUMBERS AND PRINT THEM
12 FOR I=0 TO N: A(I)=INT(RND(1)*10)+1: NEXT: GOSUB 50
20 FOR J=1 TO N:KEY=A(J): I=J-1: GOSUB 30: A(I+1)=KEY: NEXT: GOSUB 50: END
30 IFI=-1 THEN RETURN
31 IFA(I)>KEY THEN A(I+1)=A(I):I=I-1: GOTO 30
32 RETURN
50 PRINT: FOR I=0 TO N: PRINTA(I): NEXT: RETURN

View file

@ -0,0 +1,27 @@
100 PROGRAM "InserSrt.bas"
110 RANDOMIZE
120 NUMERIC ARRAY(5 TO 21)
130 CALL INIT(ARRAY)
140 CALL WRITE(ARRAY)
150 CALL INSERTSORT(ARRAY)
160 CALL WRITE(ARRAY)
170 DEF INIT(REF A)
180 FOR I=LBOUND(A) TO UBOUND(A)
190 LET A(I)=RND(98)+1
200 NEXT
210 END DEF
220 DEF WRITE(REF A)
230 FOR I=LBOUND(A) TO UBOUND(A)
240 PRINT A(I);
250 NEXT
260 PRINT
270 END DEF
280 DEF INSERTSORT(REF A)
290 FOR J=LBOUND(A)+1 TO UBOUND(A)
300 LET I=J-1:LET SW=A(J)
310 DO WHILE I>=LBOUND(A) AND SW<A(I)
320 LET A(I+1)=A(I):LET I=I-1
330 LOOP
340 LET A(I+1)=SW
350 NEXT
360 END DEF