Заменить значение последней компоненты файла на число 18 - Turbo Pascal
Формулировка задачи:
Построить файл, компоненты (<=7) которого являются натуральными числами, после чего заменить значение последней компоненты файла на число 18. Исходный и результирующий файлы вывести на экран.
Решение задачи: «Заменить значение последней компоненты файла на число 18»
textual
Листинг программы
uses crt; const max=7; var f:file; n,i:byte; a:integer; begin clrscr; repeat write('Количество компонент от 1 до ',max,' n='); readln(n); until n in [1..max]; assign(f,'file'); rewrite(f,2);{2 - 2 байта, тип integer} writeln('Введите ',n,' натуральных чисел:'); for i:=1 to n do begin repeat write('a',i,'='); readln(a); until (a>0)and(a<>18); blockwrite(f,a,1);{запишем 1 блок в 2 байта} end; writeln('Содержание исходного файла F:'); reset(f,2); while not eof(f) do begin blockread(f,a,1);{читаем 1 блок} write(a,' '); end; writeln; seek(f,filesize(f)-1); a:=18; blockwrite(f,a,1); writeln('Содержание измененного файла F:'); seek(f,0); while not eof(f) do begin blockread(f,a,1); write(a,' '); end; close(f); readln end.
Объяснение кода листинга программы
- Создаётся объект файла
f
с именемfile
. - Выводится сообщение с просьбой ввести количество компонент от 1 до 7.
- Вводится количество компонент
n
. - Устанавливается имя файла
f
и перезаписывается его содержимое. - Запрашивается ввод
n
натуральных чисел. - Для каждого числа
a
выполняется цикл, в котором проверяется, что число больше 0 и не равно 18. - Если условие выполняется, то записывается число
a
в файл. - После завершения цикла выводится сообщение о содержании исходного файла
F
. - Устанавливается позиция чтения/записи файла в начало файла.
- Читается содержимое файла построчно до конца файла.
- Записывается значение 18 в файл.
- Выводится сообщение о содержании измененного файла
F
. - Закрывается файл.
- Выводится сообщение с просьбой ввести любое число для продолжения работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д