program generovanie_permutacii;
uses crt;
type retazec=string[7];
var s:retazec; {to co sa bude permutovat}
procedure permutuj(co,prefix : retazec;dlzka:integer);
var pom:string;
i:integer;
begin
if dlzka=0 then writeln(prefix)
else
for i:=1 to dlzka do
begin
pom:=co;
delete(pom,i,1);
permutuj(pom,prefix+co[i],dlzka-1);
end;
end; { permutuj }
begin
clrscr;
write('zadaj retazec ktory chces permutovat (nie dlhsi ako 7 znakov) ');
readln(s);
permutuj(s,'',length(s));
readkey;
end.