Чтение в типизированный файл и сортировка данных в типизированном файле - Free Pascal
Формулировка задачи:
Здравствуйте!
Дан текстовый файл со следующей характеристикой:
"<имя> <число>"
Нужно прочитать данные из текстового файла в типизированный файл и отсортировать с помощью типизированного файла их в порядке возрастания по значению <число> из текстового файла.
И вывести в новый текстовый файл.
Программы у меня нет, но есть процедура сортировки чисел через типизированный файл (написана мной месяц назад примерно). Подтвердить могу тем, что в ней присутствуют операторы, которые можно было бы и не писать (пример подписал в исходнике).
Собственно мне нужно как-то вытащить эти числа, но при этом сохранить их связь с именами, чтобы после сортировки все правильно расставить.
Скорее всего надо использовать записи, но я не могу понять как их связать с типизированным и файлом. И самое главное как их записать.
Вот сам исходник:
procedure sort_by_tip_f; var bj,bi,obmen,nobm,bn,n,i,j :integer; begin i:=0; kz:=kz+1; for j:=i to razmer-2 do begin seek(f,j);{не является обязательным в этом месте, указатель в файле и сам передвигается при чтении} read(f,bj); nobm:=j; obmen:=bj; for n:=j+1 to razmer-1 do begin seek(f,n); read(f,bn); if bn>obmen then begin nobm:=n; obmen:=bn; end; end; if obmen<>j then begin seek(f,nobm); write(f,bj); seek(f,j); write(f,obmen); end; end; end;
Решение задачи: «Чтение в типизированный файл и сортировка данных в типизированном файле»
textual
Листинг программы
assign(f,s);//здесь нужно имя файла напрямую, или присвоить его переменной s rewrite(f);
Объяснение кода листинга программы
f
- это переменная, которая представляет собой файловый дескриптор (идентификатор файла).s
- это переменная, которая представляет собой строку (строковый литерал).assign(f,s)
- это функция, которая присваивает файловый дескриптор (идентификатор файла) переменнойf
значение переменнойs
.rewrite(f)
- это функция, которая открывает файл с идентификаторомf
для записи и отбрасывает его содержимое.- В результате выполнения кода переменная
f
будет содержать файловый дескриптор (идентификатор файла), который можно использовать для чтения и записи данных в файл.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д