По заданию нужно в введённой строке, в словах переставить местами буквы по алфавиту. Ну и вывести итоговую строку самособой. Подскажите пожалуйста, какой рекурсии не хватает и где?
program Slovaeng;
const
Delim=[' ', ',', '.', '?', '!'];
var
s, stmp, str:string;
i:Integer;
Min:char;
begin
begin
writeln ('S:');
readln (s);
i:=1;
str:='';
while i<= length(s) do
begin
while (i<=Length(s)) and (s[i] in delim) do
stmp:=stmp+s[i];
inc(i);
str:='';
while (i<=Length(s)) and (not(str[i] in delim)) do
begin
str:=str+str[i];
inc(i);
end;
if str[i]>(str[i+1]) then min:=str[i+1];
end;
str[i]:=min;
str[i+1]:=str[i];
end;
writeln('получается', stmp);
end.