Символьный файл содержит пробелы. Сжать этот файл (убрать пробелы) - Pascal
Формулировка задачи:
Символьный файл содержит пробелы. Сжать этот файл (убрать пробелы). В текстовом файле, написать текст и из него убрать пробелы. Как привязать файл, и как пробелы удалить, через какую команду?
Решение задачи: «Символьный файл содержит пробелы. Сжать этот файл (убрать пробелы)»
textual
Листинг программы
- var n, k: longword;
- f: file of char;
- c: char;
- begin
- assign(f, 'text.txt');
- reset(f);
- n := 0;
- for k := 0 to filesize(f) - 1 do
- begin
- seek(f, k);
- read(f, c);
- if c <> ' '
- then begin
- seek(f, n);
- write(f, c);
- inc(n)
- end
- end;
- seek(f, n);
- truncate(f);
- close(f)
- end.
Объяснение кода листинга программы
- Объявляются переменные:
n
иk
типа longword для хранения числовых значенийf
типа file of char для работы с файломc
типа char для хранения символов из файла
- Происходит присвоение файла
text.txt
переменнойf
с помощью процедуры assign. - Выполняется открытие файла для чтения с помощью процедуры reset.
- Переменной
n
присваивается значение 0. - Выполняется цикл от 0 до размера файла минус 1 (filesize(f) - 1).
- В теле цикла:
- Устанавливается позиция чтения в файле на позицию
k
с помощью процедуры seek. - Символ из файла считывается в переменную
c
с помощью процедуры read. - Проверяется, не равен ли считанный символ пробелу.
- Если символ не равен пробелу, то:
- Устанавливается позиция записи в файле на позицию
n
с помощью процедуры seek. - Записывается символ
c
в файл с помощью процедуры write. - Увеличивается значение переменной
n
на 1 с помощью функции inc.
- Устанавливается позиция чтения в файле на позицию
- Устанавливается позиция записи в файле на позицию
n
с помощью процедуры seek. - Обрезается файл до позиции
n
с помощью процедуры truncate. - Закрывается файл с помощью процедуры close.
Код выполняет удаление пробелов из символьного файла
text.txt
, сжимая его содержимое.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д