//Pascal ABC.NET v3.1 сборка 1172Var s,sr:string; i,j,n:integer; pr:array of char=('.',',',';',':','!','?');begin readln(s);s:=s.Trim;var ars:=s.ToWords();s:='';for i:=0 to ars.Length-1 dos+=ars[i]+' ';s:=s.Trim;i:=0;while i<>s.Length dobegininc(i);if (s[i] in pr) and (s[i-1]=' ') then delete(s,i-1,1);end;i:=0;while i<>s.Length-1 dobegininc(i);if (s[i] in pr) and (s[i+1]<>' ') then insert(' ',s,i+1);end;s:=s.Trim;writeln(s);end.Пример ввода:Очень, очень ,очень , очень ,очень,очень много слов.Пример вывода:Очень, очень, очень, очень, очень, очень много слов.