zadach228.PAS

{* Задача 228 *}

Unit ZADACH228;
Interface
Implementation
Begin
 writeln('Дано предложение, заканчивающееся точкой. Из слов предложения вычеркивается буква а. Определить, сколько слов в новом предл являются перевертышами');
End.

Program zadach228;

Uses zadach228.pas; {* Эту строку можно удалить *}
Uses crt; {* Подключаем внешние файлы *}
Var {* В работе нам потребуются переменные: *}
  l1 : longint;
  j  : longint;
  i  : longint;
  l  : longint;
  k  : longint;
  a  : String;
  b  : String;
  c  : String;
Begin
  m : clrscr; {* Стираем всё с экрана *}
  textcolor(10); {* Выбрать Светло-зеленый цвет текста *}
  write('введите текст: ');
  readln(a);
  l := length(a);
  If a[l]'.' Then
  Begin
    write('Поставьте "." конце предложения');
    readln; {* Ждем подтверждения пользователя *}
    Goto m;
  End;
  m2:
  For i := 1 To l Do {* Переменная i увеличивается с 1 до l *}
    If (a[i] = 'a')Or(a[i] = 'а'Then
    Begin
      delete(a, i, 1);
      l := l - 1;
      Goto m2;
    End;
  k := 0;
  For i := 1 To l Do {* Переменная i увеличивается с 1 до l *}
    If (a[i] = ' ')And(a[i + 1] = ' 'Then
      inc(k) {* k++ *}
    Else a[i - k] := a[i];
      l := l - k;
  k := 0;
  For i := 1 To l Do {* Переменная i увеличивается с 1 до l *}
    If (a[i] = ' ')Or(a[i] = '.'Then
    Begin
      l1 := length(b);
      c := '';
      For j := l1 Downto 1 Do
        c := c + b[j];
      If b = c Then
        inc(k); {* Прибавим к k единицу *}
      b := '';
    End;
    Else b := b + a[i];
      write('кол-во:', k);
  readln; {* Ждем подтверждения пользователя *}
End.