Pagini recente » Cod sursa (job #1550850) | Cod sursa (job #1166450) | Cod sursa (job #2719992) | Cod sursa (job #925947) | Cod sursa (job #144682)
Cod sursa(job #144682)
var n,i,j,aux:longint;
p:array[1..8] of byte;
f,g:text;
begin
assign(f,'permutari.in');reset(f);
assign(g,'permutari.out');rewrite(g);
read(f,n);
for i:=1 to n do begin
p[i]:=i;
write(g,p[i],' ');
end;
writeln(g);
repeat
i:=n;
while (i>0) and (p[i]>p[i+1]) do
i:=i-1;
if i>0 then begin
j:=n;
while p[j]<p[i] do
j:=j-1;
aux:=p[i];
p[i]:=p[j];
p[j]:=aux;
for j:=i+1 to (n+i+1) div 2 do begin
aux:=p[j];
p[j]:=p[(n+i+1)-j];
p[(n+i+1)-j]:=aux;
end;
for i:=1 to n do write(g,p[i],' ');
writeln(g);
end;
until i=0;
close(f);
close(g);
end.