![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Совсем новичок |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 29 Пол: Мужской Репутация: ![]() ![]() ![]() |
Доброго времени суток.
Вот задача упорядочения данных файла.(файл неструктурированный!) (не могу решить вообще :-), выручайте!) В файле содержится инфа в таком виде: <название_объекта_1>, <размерность_обЪекта_1> <название_объекта_2>, <размерность_обЪекта_2> <название_объекта_3>, <размерность_обЪекта_3> ... ... и т.д. (сколько угодно обЪектов) В НОВЫЙ файл переписать упорадоченную, например, по убыванию "размерности_объекта" инфу, т.е., например: если "<размерность_обЪекта_2>" больше "<размерность_обЪекта_1>" и всех остальных, а "<размерность_обЪекта_1>" больше "всех остальных", то в новый файл переписывается: <название_объекта_2>, <размерность_обЪекта_2> <название_объекта_1>, <размерность_обЪекта_1> <название_объекта_3>, <размерность_обЪекта_3> ... ... и т.д. Заранее благюдарю за помощь! ![]() |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Уточнение: файл у тебя неструктурированный, хорошо... Он что, текстовый? (иначе, как именно ты хранишь названия объектов и их размерности?)
Задача сводится к сортировке строк в текстовом файле... Тогда еще дополнительный вопрос: размер файла (в смысле, количество строк) хоть как-то ограничен? |
Совсем новичок |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 29 Пол: Мужской Репутация: ![]() ![]() ![]() |
Да, файл текстовый.
Количество строк неограничено. |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Значит, тебе сюда: Сортировка последовательных файлов слиянием
(поменяй типизированные файлы на текстовые, но алгоритм-то останется тем же...) |
Совсем новичок |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 29 Пол: Мужской Репутация: ![]() ![]() ![]() |
А есть более простой способ сортировки файла?
Добавлено через 5 мин. А может прочитать данные файла в структуру, затем упорядочить и записать в новый файл? Добавлено через 46 сек. Как это сделать? Не представляю. |
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Цитата А может прочитать данные файла в структуру А тебя что, просто так спрашивал, какое ограничение существует на размер файла? Попробуй, прочти, при размере файла больше, скажем, 60Кбайт... Ну, или чуть больше - если использовать динамические структуры данных... |
Совсем новичок |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 29 Пол: Мужской Репутация: ![]() ![]() ![]() |
Но сортировка слиянием меня не устраивает. Ладна, структура тоже не годится.
|
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Цитата Но сортировка слиянием меня не устраивает. Чем, можно поинтересоваться? |
Совсем новичок |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 29 Пол: Мужской Репутация: ![]() ![]() ![]() |
Слишком сложно. Будем считать, что я не знаю об этом способе ничего и нужно решить задачу более простым способом.
|
volvo |
![]()
Сообщение
#10
|
Гость ![]() |
Значит задавай ограничения на размер файла, читай его содержимое в массив (или любую другую структуру данных), сортируй эту структуру, и перезаписывай в файл... Бесплатных пирожных не бывает. Не знаешь - учись, не хочешь - ограничивай исходные данные.
|
not_programmer |
![]()
Сообщение
#11
|
Новичок ![]() Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: ![]() ![]() ![]() |
Решил эту задачу.
Одно замечание: в исходном файле с данными, данные хранятся в виде: <название объекта1> <размерность1> <пустая строка> <название объекта2> <размерность2> <пустая строка> <название объекта3> <размерность3> ... (мне так легче считывать в структуру) (у меня задание было про реки и их протяженность)
|
![]() ![]() |
![]() |
Текстовая версия | 21.06.2025 17:26 |