Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2012, 01:40   #1
nidaime
Пользователь
 
Регистрация: 28.11.2011
Сообщений: 26
Вопрос Типизированный файл.Рандомная сортировка

Программа должна сортировать типизированный файл длиной m записей случайным образом. (т.е чтобы каждый раз содержимое файла на екран выводилось в разном порядке).Помогите с сортировкой.
nidaime вне форума Ответить с цитированием
Старый 17.05.2012, 07:57   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Буквально на этой неделе кажись на форуме выкладывался пример сортировки элементов файла прямо в файле без записи в память. Пройдись поиском по форуму. Ищи по слову seek, думаю быстрее найдешь.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.05.2012, 09:15   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

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

во-вторых, всё таки нужно чтобы программа ВЫВОДИЛА на экран в случайном порядке, или чтобы записи в файле физически меняли своё положение?
Это принципиальная разница!

в-третьих, вопрос упирается в размер m
Если m позволяет загрузить содержимое файла в память - то вопросов по перемешиванию никаких не возникнет.
если же нет (и m достаточно большое (ну, например, 10000 записей), то перемешивание записей файла может занять достаточно большое время.

Хотя, с другой стороны.
допустим исходный файл имеет записи (5 штук), например, R1 R2 R3 R4 R5
а после перемешивания: R5 R2 R3 R4 R1 (ну, грубо говоря, пара случаных записей сменила свою позицию в файле).
задача выполнена?! (в этом случае размер m действительно значения не имеет
Serge_Bliznykov вне форума Ответить с цитированием
Старый 17.05.2012, 16:27   #4
nidaime
Пользователь
 
Регистрация: 28.11.2011
Сообщений: 26
По умолчанию

Цитата:
во-вторых, всё таки нужно чтобы программа ВЫВОДИЛА на экран в случайном порядке, или чтобы записи в файле физически меняли своё положение?
Это принципиальная разница!
Вообще нужно чтобы выводила на экран каждый раз случайным образом но т.к m достаточно малое (< 50) то можно сначала перемешивать потом выводить.
nidaime вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Типизированный файл Pyxy Помощь студентам 2 22.12.2011 23:32
Типизированный файл с натуральными числами. Числа, встречающиеся 1 раз переписать в другой файл [Паскаль] mifomen Помощь студентам 7 16.12.2010 22:00
Типизированный файл Юляшко Паскаль, Turbo Pascal, PascalABC.NET 5 02.05.2010 19:12
Типизированный файл, сортировка по убыванию. Pumus Помощь студентам 4 20.03.2009 12:27
Типизированный файл Лубышев Помощь студентам 2 11.10.2008 11:08