Пример 2. Подсчитать количество слов заданной длины в тексте и вывести эти слова на печать
Подсчитать количество слов заданной длины в тексте и вывести эти слова на печать. Абзац текста ввести в файл TEXT.LIT в простейшем текстовом редакторе. Результаты работы программы записать в файл REZULT.TXT.
Program Lab_Rab_5_1; Uses Crt; const Name_file: string = 'C:\text.lit'; {множество символов - разделителей слов} Razd: set of char = [' ', '.', '?', '!', '-', ':', ',']; var Len, K: integer; Ch: char; Sl: string; f,f1: text; Poisk: boolean;
Begin ClrScr; Assign(f,Name_File); Assign(f1,'C:\Result.txt'); Rewrite(f1); {$I-} Reset(f); Reset(f); {$I+} If IOResult <> 0 then writeln ('Нет файла с именем ', Name_File) else begin Writeln('Исходный текст'); While Not Eof(f) do begin Readln(f,Sl); Writeln(sl); end; Close(f); Reset(f); Writeln; Write('Введите длину искомых слов:'); ReadLn(Len); Sl:= ''; Poisk:= false; While Not Eof(f) do begin Read(f,Ch); If not (Ch in Razd) then Sl:= Sl + Ch else begin If length(Sl) = Len then begin Poisk:= true; Writeln(f1,Sl) end; Sl:= ''; end;
end; Close(f); Close(f1); If Poisk then begin Reset(f1); Writeln('Найденные слова'); While Not Eof(f1) do begin Readln(f1,Sl); Writeln(sl); end; Close(f1); end else Writeln('В тексте нет слов длины ',Len); end; ReadKey; End.
Задание 4.1 (6 баллов) Задание 4.2 (15 баллов) Указание: текст ввести в файл TEXT.LIT в простейшем текстовом редакторе;результаты работы программы записать в текстовый файл REZULT.TXT. Лабораторная работа № 5 (записи, типизированные файлы) (2 часа) Цели: формирование навыка обработки данных комбинированного типа; формирование навыка использования файлов прямого доступа.
|