Из файла f получить файл g, исключив повторные вхождения чисел - Turbo Pascal
Формулировка задачи:
Ребят помогите пожалуйста решить эту задачу: Заполнить файл последовательного доступа f целыми числами, полученными с помощью генератора случайных чисел. Из файла f получить файл g, исключив повторные вхождения чисел. Вывести файл g на экран. Заранее спасибо.
Решение задачи: «Из файла f получить файл g, исключив повторные вхождения чисел»
textual
Листинг программы
uses crt; var f, g : file of integer; n, i, a, b, j : integer; bol : boolean; begin clrscr; assign(f,'f.dat'); assign(g,'g.dat'); rewrite(f); write('Количество компонент исходного файла : '); readln(n); randomize; writeln('Исходный файл f.dat :'); for i := 1 to n do begin a := random(11)-5; write(a:4); write(f,a); end; writeln; reset(f); rewrite(g); for i := 1 to filesize(f) do begin seek(f,i-1); read(f,a); bol := false; for j := 1 to i-1 do begin seek(f,j-1); read(f,b); If a = b then begin bol := true; break; end; end; If not bol then write(g,a); end; writeln; writeln('g.dat : '); reset(g); while not eof(g) do begin read(g,a); write(a:4); end; close(f); close(g); readln; end.
Объяснение кода листинга программы
- Создаются два файла — f и g, которые представляют собой массивы целых чисел.
- Задается количество компонентов исходного файла (переменная n).
- Инициализируется генератор случайных чисел и записывается информация о количестве компонентов исходного файла в файл f.
- Записывается информация об исходном файле f.dat в файл f.
- Переменные a и b инициализируются случайными числами от -5 до 10.
- Информация о каждой компоненте исходного файла записывается в файл f.
- Переменная bol инициализируется значением false.
- Чтение информации из файла f начинается с позиции i-1 и продолжается до конца файла.
- Если текущая позиция в файле f совпадает с предыдущей позицией, то переменная bol устанавливается в значение true и цикл прерывается.
- Если не было совпадений, то переменная a записывается в файл g.
- Цикл чтения информации из файла f продолжается до тех пор, пока не будет достигнут конец файла.
- После окончания чтения информации из файла f, закрываются файлы f и g.
- В файл g записывается информация о каждой компоненте исходного файла, начиная с позиции i-1 и до конца файла.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д