За один просмотр файла создать новый файл, в который будут записаны все слова наибольшей длинны - Free Pascal

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

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

Спасите мой степарь, пожалуйста! Надо напистаь такую прожку: Создать текстовый файл. За один просмотр файла создать новый файл, в который будут записаны все слова наибольшей длинны.

Решение задачи: «За один просмотр файла создать новый файл, в который будут записаны все слова наибольшей длинны»

textual
Листинг программы
  1. var
  2.   fin, fout : text;
  3.   s : string;
  4.   maxlen : integer;
  5. begin
  6.   assign(fin, 'd:\test\file_01.txt'); reset(fin);
  7.   assign(fout, 'd:\test\file_011.txt'); rewrite(fout);
  8.   maxlen := 0;
  9.   while not seekeof(fin) do // вот он, один проход...
  10.   begin
  11.     readln(fin, s);
  12.     if length(s) < maxlen then continue;
  13.  
  14.     if length(s) > maxlen then rewrite(fout);
  15.     maxlen := length(s);
  16.     writeln(fout, s);
  17.   end;
  18.   close(fin);
  19.   close(fout)
  20. end.

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

  1. Объявлены переменные:
    • fin, fout: text;
    • s: string;
    • maxlen: integer;
  2. Установлены начальные значения переменных:
    • assign(fin, 'd:\test\file_01.txt');
    • assign(fout, 'd:\test\file_011.txt');
    • maxlen := 0;
  3. Запущен цикл while, который выполняется до тех пор, пока не будет достигнут конец файла:
    • while not seekeof(fin) do
  4. Внутри цикла считывается строка из файла в переменную s:
    • readln(fin, s);
  5. Если длина строки s меньше максимальной длины, то цикл продолжает выполняться.
  6. Если длина строки s больше максимальной длины, то происходит перезапись файла fout:
    • rewrite(fout);
  7. Обновляется значение переменной maxlen:
    • maxlen := length(s);
  8. Строка s записывается в файл fout:
    • writeln(fout, s);
  9. По завершении цикла закрываются файлы fin и fout:
    • close(fin);
    • close(fout);

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


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

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

6   голосов , оценка 4.167 из 5

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

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

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