zadach151.PAS

{* Задача 151 *}

Unit ZADACH151;
Interface
Implementation
Begin
 writeln('Определить кол-во слов в строке. Слова отделяются одним или несколькими пробелами ');
End.

Program zadach151;

Uses zadach151.pas; {* Эту строку можно удалить *}
Uses crt; {* Подключаем внешние файлы *}
Var {* В работе нам потребуются переменные: *}
  i : longint;
  l : longint;
  k : longint;
  j : longint;
  a : String;
Begin
  clrscr; {* Очищаем экран *}
  textcolor(11); {* Светло-сине-зеленый текст *}
  write('введите текст: ');
  readln(a);
  l := length(a);
  For i := 1 To l Do {* Переменная i увеличивается с 1 до l *}
    If (a[i] = ' ')And(a[i + 1] = ' 'Then
      inc(j) {* Прибавим к j единицу *}
    Else a[i - j] := a[i];
      l := l - j;
  If a[1] = ' ' Then
  Begin
    delete(a, 1, 1);
    l := l - 1;
  End;
  If a[l]' ' Then
  Begin
    inc(l); {* Прибавим к l единицу *}
    a[l] := ' ';
  End;
  For i := 1 To l Do {* Увеличиваем i от 1 до l с шагом 1 *}
    If a[i] = ' ' Then
      inc(k); {* Прибавим к k единицу *}
  write(' кол-во слов: ', k);
  readln; {* Ждем нажатия Enter *}
End.