Сформировать на основе внешнего текстового файла Т1 файл Т2, разбивая Т1 на строки - Free Pascal

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

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

.Разработать программу, которая формирует на основе внешнего текстового файла Т1 файл Т2, разбивая Т1 на строки так, чтобы каждая строка оканчивалась либо точкой с запятой, либо содержала 30 любых литер, кроме точки с запятой. В качестве Т1 можно использовать файл с исходным текстом разработанной программы Обрезает последний символ строки
var
s:string;
i,j,k:integer;
t:text;
a:array[1..100] of string;
begin
j:=1;
assign(t,'d:/T1.txt');
reset(t);
  readln(t,s);
  close(t);
  For i:=1 to length(s) do begin
    if (s[i]=';') or (length(a[j])>30) then j:=j+1 else
    a[j]:=a[j]+s[i];
    end;
    assign(t,'d:/T2.txt');
    rewrite(t);
  For k:=1 to j do
   writeln(t,a[k]);
   close(t);
end.

Решение задачи: «Сформировать на основе внешнего текстового файла Т1 файл Т2, разбивая Т1 на строки»

textual
Листинг программы
var
s:string;
i,j,k:integer;
t:text;
a:array[1..100] of string;
begin
j:=1;
assign(t,'d:/T1.txt');
reset(t);
  readln(t,s);
  close(t);
  For i:=1 to length(s) do begin
    if (s[i]=';') or (length(a[j])>30) then
      begin
       a[j]:=a[j]+s[i];
       j:=j+1;
      end
       else
    a[j]:=a[j]+s[i];
    end;
    assign(t,'d:/T2.txt');
    rewrite(t);
  For k:=1 to j do
   writeln(t,a[k]);
   close(t);
end.

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

  1. Объявлены переменные: s, i, j, k, t, a.
  2. Переменная j инициализируется значением 1.
  3. Открывается файл t с помощью функции assign, путь к файлу указывается в кавычках.
  4. Файл t открывается с помощью функции reset.
  5. Считывается первая строка из файла t в переменную s с помощью функции readln.
  6. Файл t закрывается с помощью функции close.
  7. Запускается цикл for для обработки каждой символа строки s.
  8. Если символ является точкой с запятой или длина строки в переменной a[j] превышает 30 символов, то выполняется блок кода:
    • к переменной a[j] добавляется текущий символ.
    • значение переменной j увеличивается на 1.
  9. Если текущий символ не является точкой с запятой или не является последним символом строки, то к переменной a[j] добавляется текущий символ.
  10. Завершается цикл for для обработки каждой строки файла t.
  11. Переменная t перезаписывается с помощью функции rewrite, путь к файлу указывается в кавычках.
  12. Запускается цикл for для записи каждой строки из массива a в файл t.
  13. Закрывается файл t с помощью функции close.
  14. Код завершается.

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


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

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

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