uses crt;
var i,j:integer;
s,new_s,st:string;
buf_s:char;
BEGIN
writeln('Введите строку :');
readln(s);
if s[Length(s)] <> #32 then s:=s+#32; //добавим в конец строки пробел
{---------------------- удаляем лишнии пробеллы ---------------------------------------}
repeat
if pos(#32+#32,s) <> 0
then Delete(s,pos(#32+#32,s),1);
until pos(#32+#32,s) = 0;
{---------------------- формируем необходимую нам строку -------------------------------}
new_s:='';
repeat
st:=Copy(s,1,pos(#32,s));
Delete(s,1,pos(#32,s));
for i:=1 to length(st)-2 do
for j:=i+1 to length(st)-1 do
if st[i]>st[j]
then begin
buf_s:=st[i];
st[i]:=st[j];
st[j]:=buf_s;
end;
new_s:=new_s+st;
until s = '';
{---------------------------- выводим результат ------------------------------------------}
writeln;
writeln(new_s);
END.