25 lines
365 B
ObjectPascal
25 lines
365 B
ObjectPascal
// Âñå ïåðåñòàíîâêè
|
|
uses Arrays;
|
|
|
|
const n = 4;
|
|
|
|
var a: array of integer;
|
|
|
|
procedure Perm(m: integer);
|
|
begin
|
|
if m=1 then
|
|
a.Writeln;
|
|
for var i:=0 to m-1 do
|
|
begin
|
|
Swap(a[i],a[m-1]); // ñòàâèì êàæäûé íà ìåñòî ïîñëåäíåãî
|
|
Perm(m-1);
|
|
Swap(a[i],a[m-1]);
|
|
end;
|
|
end;
|
|
|
|
begin
|
|
SetLength(a,n);
|
|
for var i:=0 to n-1 do
|
|
a[i] := i+1;
|
|
Perm(n);
|
|
end. |