Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
25
Task/Permutations/XPL0/permutations.xpl0
Normal file
25
Task/Permutations/XPL0/permutations.xpl0
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
code ChOut=8, CrLf=9;
|
||||
def N=4; \number of objects (letters)
|
||||
char S0, S1(N);
|
||||
|
||||
proc Permute(D); \Display all permutations of letters in S0
|
||||
int D; \depth of recursion
|
||||
int I, J;
|
||||
[if D=N then
|
||||
[for I:= 0 to N-1 do ChOut(0, S1(I));
|
||||
CrLf(0);
|
||||
return;
|
||||
];
|
||||
for I:= 0 to N-1 do
|
||||
[for J:= 0 to D-1 do \check if object (letter) already used
|
||||
if S1(J) = S0(I) then J:=100;
|
||||
if J<100 then
|
||||
[S1(D):= S0(I); \object (letter) not used so append it
|
||||
Permute(D+1); \recurse next level deeper
|
||||
];
|
||||
];
|
||||
];
|
||||
|
||||
[S0:= "rose "; \N different objects (letters)
|
||||
Permute(0); \(space char avoids MSb termination)
|
||||
]
|
||||
Loading…
Add table
Add a link
Reference in a new issue