![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Svetlana |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Репутация: ![]() ![]() ![]() |
Всем доброго дня и ночи! Сегодня у меня был экзамен и надо было решить такую задачу:
Дан файл целых чисел.Переупорядочить его по неубыванию с помощью списка.Оформить в виде процедуры Вот что я написала:
Теперь поясню то,что я хотела этим сказать:1.Ищем в файле мин.число,включаем его в список 2.Удаляем из файла минимум 3.Опять ищем в файле минимум,включаем его в список и удаляем из файла...Получается цикл,который заканчивается,когда файл станет пустым. Моя ошибка,на которую указал преподаватель в том,что я минимуму присваиваю 0. Т.е. я не предуссматриваю случаи с отрицательными числами.И вообще она не эффективная...Укажите на ошибки,пожалуйста,если они здесь ещё есть.И как можно было решить эту задачу по-другому?Очень интересно... Сообщение отредактировано: Svetlana - 29.06.2009 12:10 |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата Укажите на ошибки,пожалуйста,если они здесь ещё есть 1) Цитата здесь оператор(станд. процедура или функция),который удаляет найденное число Нет такой стандартной процедуры, чтобы из файла удалить число.2) алгоритм очень несовершенен, даже если написать процедуру, удаляющую мин. элемент из файла - ты будешь по файлу проходить многократно, а это не надо никому... Проще было бы прочитать подряд все из файла в список (можно - в простой, и потом его отсортировать, можно - сразу добавлять элемент в список, сохраняя его упорядоченность по неубыванию, это несложно), а потом просто опустошить старый файл (Rewrite-ом), и из списка все подряд переписать в него, таким образом элементы файла будут упорядочены по неубыванию... P.S. Цитата filesize(f)<>nil Это что? Вообще-то FileSize возвращает размер (число), а не указатель... |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 2:32 |