zadach308.PAS

{* Задача 308 *}

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

Program pas13581;

Uses zadach308.pas; {* Эту строку можно удалить *}
Uses crt; {* Подключение модулей *}
Const {* Константы *}
  pr = [' ''.'', ''?''!'':''('')',#13];
Var {* Необходимые переменные *}
  s     : char;
  b     : char;
  txt   : text;
  slovo : String;
  i     : integer;
Begin
  clrscr; {* Очистка экрана *}
  assign(txt, 'c:txt.txt'); {* Подключение к файлу 'c:txt.txt' через переменную txt *}
  reset(txt); {* Открытие файла для чтения *}
  writeln('ВВедите букву:');
  readln(b);
  If ord(b) In [128..143] Then
    b := chr(ord(b) + 32);
  If ord(b) In [144..159] Then
    b := chr(ord(b) + 80);
  slovo := '';
  i := 0;
  While Not(EOF(txt)) Do
  Begin
    read(txt, s);
    If ord(s) In [128..143] Then
      s := chr(ord(s) + 32);
    If ord(s) In [144..159] Then
      s := chr(ord(s) + 80);
    If Not(s In pr) Then
      slovo := slovo + s
    Else Begin
      If slovo[1] = b Then
        i := + i + 1;
    slovo := '';
  End;
  
End;
  close (txt); {* Закрытие файла *}
  writeln('Слов, начинающихся буквы "', b, '"');
  writeln('в файле содержится: ', i);
  readln
  End...