Программирование и работа с файлами - Pascal ABC
Формулировка задачи:
Написать программу и блок-схему.
Дан файл f, компоненты которого являются целыми числами. Число компонент файла делиться на 5. Записать в файл g наибольшее значение первых пяти компонент файла f, затем следующих пяти компонентов и т.д.
Решение задачи: «Программирование и работа с файлами»
textual
Листинг программы
var f,g:file of integer; a,i,j,n,mx:integer; begin randomize; assign(f,'fileF'); rewrite(f); assign(g,'fileG'); rewrite(g); for i:=1 to 25 do begin a:=random(100); write(f,a); end; writeln('Содержание исходного файла:'); reset(f); for i:=0 to filesize(f)-1 do begin read(f,a); write(a:3); end; writeln; writeln; reset(f); n:=filesize(f) div 5; for i:=0 to n-1 do begin j:=5*i; seek(f,j); read(f,mx); while(j<5*i+4)and(j<filesize(f)-1)do begin j:=j+1; seek(f,j); read(f,a); if a>mx then mx:=a; end; write(g,mx); end; close(f); writeln('Содержание файла максимумов:'); reset(g); for i:=0 to filesize(g)-1 do begin read(g,a); write(a:3); end; close(g); end.
Объяснение кода листинга программы
- Создаются два файла 'fileF' и 'fileG'.
- В 'fileF' записываются 25 случайных чисел от 0 до 99.
- В 'fileG' записывается содержимое 'fileF'.
- В 'fileF' считывается содержимое, которое было записано в 'fileG'.
- В 'fileF' считывается содержимое, начиная с позиции, равной размеру 'fileF' деленный на 5.
- Для каждой позиции в 'fileF' считывается следующее число, которое больше или равно максимальному числу 'mx'.
- Максимальное число 'mx' записывается в 'fileG'.
- Закрываются файлы 'fileF' и 'fileG'.
- Выводится содержимое 'fileF'.
- Выводится содержимое 'fileG'.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д