Получить все строки файла f, фрагментом которых есть строка s - Pascal

Узнай цену своей работы

Формулировка задачи:

2.Дано текстовый файл f, строчка s. Получить все строки файла f, фрагментом которых есть строка s.

Решение задачи: «Получить все строки файла f, фрагментом которых есть строка s»

textual
Листинг программы
program SubStrSInFile;
 
const
  FILE_NAME = 'test.txt';
  TARGET_SUB_STRING = 'ooo';
 
var
  InputFile : Text;
  InputStr : String;
 
begin
  //открываем файл на чтение
  Assign(InputFile, FILE_NAME);
  Reset(InputFile);
  
  //считываем и проверяем строчку за строчкой
  while not Eof(InputFile) do
    begin
      readln(InputFile, InputStr);
      if (pos(TARGET_SUB_STRING, InputStr) <> 0)
      then writeln(InputStr);
    end;
    
  //закрываем файл
  Close(InputFile);
  readln;
end.

Объяснение кода листинга программы

  1. Объявляется константа FILE_NAME со значением имени файла test.txt.
  2. Объявляется константа TARGET_SUB_STRING со значением подстроки, которую нужно найти в файлах, равной ooo.
  3. Создается переменная InputFile типа Text для работы с файлом.
  4. Создается переменная InputStr типа String для хранения считанной строки из файла.
  5. Открывается файл для чтения с помощью процедуры Reset и указывается имя открываемого файла FILE_NAME.
  6. Пока не достигнут конец файла, выполняется цикл чтения строк из файла.
    • Считывается строка из файла с помощью процедуры readln в переменную InputStr.
    • Проверяется, содержит ли считанная строка подстроку TARGET_SUB_STRING с помощью функции pos.
    • Если в строке найдена подстрока TARGET_SUB_STRING, то она выводится на экран с помощью процедуры writeln.
  7. Закрывается файл с помощью процедуры Close.
  8. Завершение программы.

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы