Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Файлы

Автор: Skala_net 4.05.2007 17:10

Плиз помогите решить задачу на паскале.
В отсортированный файл добавить новую запись, не нарушив его упорядоченость.

Автор: samec 4.05.2007 18:15

а наработки какие нибудь уже есть?
я бы делал так: читал из файла все записи, добавлял новую, затем сортировал их, и после всего этого уже записывал бы полученный список отсортированных записей в исходный файл.

Автор: volvo 4.05.2007 21:11

Skala_net,
файл типизированный? (просто очень часто записью называют строку текстового файла)

Если так, то идешь в конец файла, добавляешь одну запись (пустую), а потом переносишь (n-1)-ую запись на место n-ой (другими словами, сдвигаешь записи на одну ближе к концу файла), проходя от конца файла к началу... Когда остановитьсяч, я думаю, понятно? Когда на только что освободившееся место (запись из позиции К перенес на позицию К+1, следовательно К-ая позиция освободилась) можно подставить ДОБАВЛЯЕМУЮ запись, без нарушения упорядоченности (причем, сравнивать надо как записи в позициях К и К+1, так и К и К-1)...

Ну, или частный случай - добавляемая запись больще самой последней записи файла - сразу записываем ее в конец...

Автор: Skala_net 4.05.2007 22:40

Спасибо за помощь!