Подсчитать, сколько раз в файле встречается каждое из указанных слов - Turbo Pascal

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

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

Задание: Написать программу которая считывает текстовый файл и файл с перечнем слов и подсчитывает сколько раз в этом файле встречается каждое из указанных слов.

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

textual
Листинг программы
  1. uses crt;
  2. const rz=['.',',',':','-',' '];
  3. const nf='text.txt';
  4.       ng='slova.txt';
  5. var f,g:text;
  6.     i,k:byte;
  7.     sl,s,st:string;
  8. begin
  9. clrscr;
  10. assign(f,nf);
  11. assign(g,ng);
  12. reset(g);
  13. while not eof(g) do
  14.  begin
  15.   readln(g,sl);
  16.   k:=0;
  17.   reset(f);
  18.   while not eof(f) do
  19.    begin
  20.     readln(f,s);
  21.     {заменим разделители на пробелы}
  22.     for i:=length(s) downto 1 do
  23.     if s[i] in rz then s[i]:=' ';
  24.     {удалим лишние пробелы}
  25.     while pos('  ',s)>0 do delete(s,pos('  ',s),1);
  26.     {сейчас ищем и считаем слово}
  27.     while pos(' ',s)>0 do
  28.      begin
  29.       if copy(s,1,pos(' ',s)-1)=sl then k:=k+1;
  30.       delete(s,1,pos(' ',s));
  31.      end;
  32.    end;
  33.   writeln('Слово  ',sl,'  встречено ',k,' рз.');
  34.   close(f);
  35.  end;
  36. close(g);
  37. readln
  38. end.

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

  1. В начале кода используются библиотеки crt и text.
  2. Объявляются две переменные типа text: f и g. Переменная f будет использоваться для чтения из файла text.txt, а переменная g - для чтения из файла slova.txt.
  3. Далее идет функция clrscr, которая очищает экран.
  4. Затем происходит присвоение значения переменным f и g с помощью функции assign. Переменная f получает значение 'text.txt', а переменная g - 'slova.txt'.
  5. Функция reset вызывается на переменной g, чтобы сбросить ее в начало.
  6. Запускается цикл while, который будет выполняться до конца файла text.txt.
  7. Внутри цикла происходит чтение строки из файла text.txt в переменную sl с помощью функции readln.
  8. Переменная k инициализируется значением 0.
  9. Затем происходит сброс счетчика i в начало.
  10. Запускается цикл while, который будет выполняться до конца файла slova.txt.
  11. Внутри цикла происходит чтение строки из файла slova.txt в переменную s с помощью функции readln.
  12. Далее происходит проверка, содержит ли текущая строка из файла slova.txt хотя бы один символ из списка разделителей ('.', ',', ':', '-', ' '). Если содержит, то этот символ заменяется на пробел.
  13. Затем происходит удаление лишних пробелов в строке s.
  14. Далее идет проверка, содержит ли текущая строка из файла slova.txt хотя бы один символ из списка искомых слов (sl). Если содержит, то счетчик k увеличивается на 1.
  15. После этого происходит удаление текущей строки из файла slova.txt с помощью функции delete.
  16. Цикл while завершается, и выводится сообщение о количестве вхождений слова sl в тексте.
  17. После завершения работы с файлом text.txt он закрывается с помощью функции close.
  18. Затем закрывается файл slova.txt с помощью функции close.
  19. Выводится команда readln для завершения работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

11   голосов , оценка 4.273 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы