Anonymous user
Permutations: Difference between revisions
m
→version 2: restructured the REXX program. -- ~~~~
(→{{header|REXX}}: added version 2. -- ~~~~) |
m (→version 2: restructured the REXX program. -- ~~~~) |
||
Line 2,146:
exit
/*──────────────────────────────────────────────────────────────────────*/
tell: procedure expose @.;
/*──────────────────────────────────────────────────────────────────────*/
nextperm: procedure expose @.; parse arg n,i; nm=n-1
do k=nm by -1 for nm; kp=k+1
if @.k<@.kp then do; i=k; leave; end
end /*k*/
do j=i+1 while
if i==0 then return 0
do j=i+1 while @.j<@.i; end
parse value @.j @.i with @.i @.j
return 1</lang>
|