Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,46 @@
|
|||
RANDOMIZE TIMER
|
||||
|
||||
DIM nums(9) AS INTEGER
|
||||
DIM L0 AS INTEGER, L1 AS INTEGER, n AS INTEGER
|
||||
|
||||
'initial values
|
||||
FOR L0 = 0 TO 9
|
||||
nums(L0) = L0
|
||||
NEXT
|
||||
'scramble
|
||||
FOR L0 = 9 TO 1 STEP -1
|
||||
n = INT(RND * (L0)) + 1
|
||||
IF n <> L0 THEN SWAP nums(n), nums(L0)
|
||||
NEXT
|
||||
'display initial condition
|
||||
FOR L0 = 0 TO 9
|
||||
PRINT nums(L0);
|
||||
NEXT
|
||||
PRINT
|
||||
|
||||
FOR L1 = 9 TO 1 STEP -1
|
||||
n = 0
|
||||
FOR L0 = 1 TO L1
|
||||
IF nums(n) < nums(L0) THEN n = L0
|
||||
NEXT
|
||||
|
||||
IF (n < L1) THEN
|
||||
IF (n > 0) THEN
|
||||
FOR L0 = 0 TO (n \ 2)
|
||||
SWAP nums(L0), nums(n - L0)
|
||||
NEXT
|
||||
FOR L0 = 0 TO 9
|
||||
PRINT nums(L0);
|
||||
NEXT
|
||||
PRINT
|
||||
END IF
|
||||
FOR L0 = 0 TO (L1 \ 2)
|
||||
SWAP nums(L0), nums(L1 - L0)
|
||||
NEXT
|
||||
|
||||
FOR L0 = 0 TO 9
|
||||
PRINT nums(L0);
|
||||
NEXT
|
||||
PRINT
|
||||
END IF
|
||||
NEXT
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
RANDOMIZE TIMER
|
||||
|
||||
CONST delay = .1 'controls display speed
|
||||
|
||||
DIM nums(14) AS INTEGER
|
||||
DIM L0 AS INTEGER, L1 AS INTEGER, n AS INTEGER, ttmp AS SINGLE
|
||||
|
||||
'initial values
|
||||
FOR L0 = 0 TO 14
|
||||
nums(L0) = L0
|
||||
NEXT
|
||||
'scramble
|
||||
FOR L0 = 14 TO 1 STEP -1
|
||||
n = INT(RND * (L0)) + 1
|
||||
IF n <> L0 THEN SWAP nums(n), nums(L0)
|
||||
NEXT
|
||||
|
||||
'display initial condition
|
||||
CLS
|
||||
GOSUB displayer
|
||||
|
||||
FOR L1 = 14 TO 1 STEP -1
|
||||
n = 0
|
||||
FOR L0 = 1 TO L1
|
||||
IF nums(n) < nums(L0) THEN n = L0
|
||||
NEXT
|
||||
|
||||
IF (n < L1) THEN
|
||||
IF (n > 0) THEN
|
||||
FOR L0 = 0 TO (n \ 2)
|
||||
SWAP nums(L0), nums(n - L0)
|
||||
NEXT
|
||||
GOSUB displayer
|
||||
END IF
|
||||
FOR L0 = 0 TO (L1 \ 2)
|
||||
SWAP nums(L0), nums(L1 - L0)
|
||||
NEXT
|
||||
|
||||
GOSUB displayer
|
||||
END IF
|
||||
NEXT
|
||||
|
||||
COLOR 7
|
||||
END
|
||||
|
||||
displayer:
|
||||
LOCATE 1, 1
|
||||
FOR L0 = 0 TO 14
|
||||
COLOR nums(L0) + 1
|
||||
IF nums(L0) < 10 THEN PRINT " ";
|
||||
PRINT RTRIM$(LTRIM$(STR$(nums(L0)))); STRING$(nums(L0), 219); SPACE$(20)
|
||||
NEXT
|
||||
ttmp = TIMER
|
||||
DO WHILE TIMER < ttmp + delay: LOOP
|
||||
RETURN
|
||||
Loading…
Add table
Add a link
Reference in a new issue