zadach21.PAS

{* Задача 21 *}

Unit ZADACH21;
Interface
Implementation
Begin
 writeln('Дана строка слов разделенных пробелом ,в конце строки точка. Поменять местами два центральных слова если их количество четно ');
End.

Program zadach21;
Uses crt; {* Подключение модулей *}
Var {* Объявление переменных *}
  a : String;
  b : String;
  i : longint;
  j : longint;
  l : longint;
  c : Array[1..30]Of String;
Begin
  clrscr; {* Стираем всё с экрана *}
  write('введите текст: ');
  readln(a);
  b := '';
  j := 1;
  l := length(a);
  If (a[l]'.'Then
  Begin
    writeln(' ОШИБКА!!!');
    write(' В конце должна стоять точка');
    readln; {* Ждем нажатия Enter *}
    halt;
  End;
  For i := 1 To l Do {* Увеличиваем i от 1 до l с шагом 1 *}
    If (a[i] = ' ')Or(a[i] = '.'Then
    Begin
      c[j] := b;
      b := '';
      inc(j); {* j++ *}
    End;
    Else b := b + a[i];
      j := j - 1;
  If j Mod 20 Then
    beginwrite('количество слов нечетно');
  readln; {* Ждем нажатия Enter *}
  halt;
End;
  l := j Div 2;
  b := c[l];
  c[l] := c[l + 1];
  c[l + 1] := b;
For i := 1 To j Do {* Увеличиваем i от 1 до j с шагом 1 *}
  write(c[i], ' ');
readln; {* Приостановка программы. Ожидание Enter *}
End..