Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,39 @@
|
|||
SUB perms (n)
|
||||
DIM p((n + 1) * 4)
|
||||
FOR i = 1 TO n
|
||||
p(i) = -i
|
||||
NEXT i
|
||||
s = 1
|
||||
|
||||
DO
|
||||
PRINT "Perm: (";
|
||||
FOR i = 1 TO n
|
||||
PRINT ABS(p(i)); "";
|
||||
NEXT i
|
||||
PRINT ") Sign: "; s
|
||||
|
||||
k = 0
|
||||
FOR i = 2 TO n
|
||||
IF p(i) < 0 AND (ABS(p(i)) > ABS(p(i - 1))) AND (ABS(p(i)) > ABS(p(k))) THEN k = i
|
||||
NEXT i
|
||||
FOR i = 1 TO n - 1
|
||||
IF p(i) > 0 AND (ABS(p(i)) > ABS(p(i + 1))) AND (ABS(p(i)) > ABS(p(k))) THEN k = i
|
||||
NEXT i
|
||||
IF k THEN
|
||||
FOR i = 1 TO n 'reverse elements > k
|
||||
IF ABS(p(i)) > ABS(p(k)) THEN p(i) = -p(i)
|
||||
NEXT i
|
||||
'if p(k) < 0 then i = k-1 else i = k+1
|
||||
i = k + SGN(p(k))
|
||||
SWAP p(k), p(i)
|
||||
'temp = p(k)
|
||||
'p(k) = p(i)
|
||||
'p(i) = temp
|
||||
s = -s
|
||||
END IF
|
||||
LOOP UNTIL k = 0
|
||||
END SUB
|
||||
|
||||
perms (3)
|
||||
PRINT
|
||||
perms (4)
|
||||
Loading…
Add table
Add a link
Reference in a new issue