Permutations by swapping: Difference between revisions
→{{header|Forth}}
m (→{{header|Sidef}}: updated code) |
|||
Line 837:
addr2 @ addr1 !
tmp addr2 ! ;
: perms {: n xt | my-i k s -- :}
& p{ n 1+ }malloc malloc-fail? ABORT" perms :: out of memory"
0 p{ 0 } !
Line 845:
1 TO s
BEGIN
-1 +LOOP▼
p{ I } @ ABS . SPACE▼
n 1+ s xt EXECUTE
▲ LOOP
." ] Sign: " s . CR▼
0 TO k
n 1+ 2 DO
Line 878 ⟶ 877:
THEN
k 0 = UNTIL ;
: .perm ( p0 p1 p2 ... pn n s )
>R
." Perm: [ "
1 DO
LOOP
3 ' .perm perms CR
4 ' .perm perms</lang>
=={{header|FreeBASIC}}==
|