Дана строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). Вывести строку, содержащую эти же слова

veselova999 veselova999    2   16.04.2019 23:00    8

Ответы
nikitta76 nikitta76  16.04.2019 23:00
program Project1;
 
const
  //Разделители слов.
  D = ['.', ',', ':', ';', '!', '?', '-', ' ', #9, #10, #13];
var
  S, SRes : String;
  i, Len, Pos1 : Integer;
begin
  repeat
    Writeln('Задайте строку:');
    Readln(S);
 
    Len := Length(S);
    SRes := '';
    Pos1 := 0;
    //Перебор символов строки в направлении справа-налево.
    for i := Len downto 1 do begin
      //Пропускаем разделители.
      if S[i] in D then Continue;
      //Отслеживаем конец слова.
      if (i = Len) or (S[i + 1] in D) then Pos1 := i;
      //Отслеживаем начало слова.
      if (i = 1) or (S[i - 1] in D) then begin
        //Добавление пробела.
        if SRes <> '' then SRes := Sres + ' ';
        //Добавляем слово к строке.
        SRes := SRes + Copy(S, i, Pos1 - i + 1);
      end;
    end;
 
    Writeln('Ответ:');
    Writeln(SRes);
 
    Writeln('Повторить - Enter. Выход - любой символ + Enter.');
    Readln(S);
  until S <> '';
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Другие предметы