![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Client |
![]()
Сообщение
#1
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
Всем привет!
У меня проблема с такой задачей:даны 2 файла упорядоченные по неубыванию, получить новый файл, упорядоченный из элементов этих двух файлов по неубыванию. Никак не могу сделать чтоб работала для всех вариантов исходных данных... |
Айра |
![]()
Сообщение
#2
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата для всех вариантов исходных данных... Поясни пожалуйста. |
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
Client, поиск по форуму по ключевым словам сортировка Неймана слиянием выдает решение задачи.... Но раз ты сам пытался ее решить, лучше (прежде, чем брать готовое из поиска) приведи свою программу и те файлы, на которых она не отрабатывает, посмотрим, где ты ошибся...
|
Client |
![]()
Сообщение
#4
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
procedure sliyanie;Пример Файл 1:2 2 3 4 7 Файл 2:5 10 Я делал так:читаем последние элементы файлов, сравниваем их.Ресет 2 файлов, читаем первые элементы. 10>7, значит пока не конец первого файла читаем из первого и сравнием. Когда кончился файл 1, дописываем элементы файла 2. На этом примере вроде отработало, а если поменять файлы местами- то не работает. Еще пример: файл 1:50 файл 2: 2 2 3 4 7 Здесь как тока считали 50, сразу конец файла1 и не входим ни в один из циклов. |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата Я делал так:читаем последние элементы файлов, сравниваем их Ну, и зачем? Читать элементы надо последовательно с самого начала... Пока текущий элемент одного из файлов меньше, чем текущий элемент другого - меньший пишешь в файл результата... Как только достиг конца одного из файлов - этот цикл прекращается, и все что тебе останется сделать - это сбросить остаток второго файла в файл-результат.Откуда у тебя взялся четвертый файл? |
Client |
![]()
Сообщение
#6
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
Цитата Откуда у тебя взялся четвертый файл? f4-это файл, в котором будет результатЦитата Ну, и зачем? Так я делал с самого начала, но не доделал, щас буду заново писать код.Спасибо за идею ![]() |
Client |
![]()
Сообщение
#7
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
procedure sli;На выше указанные примеры отработало, а на 2 3 4 2 7 Не хочет.... Что надо добавить в этот код? ![]() P.S. Это сообщение отправил еще вчера... |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Смотри:
procedure sli; |
Client |
![]()
Сообщение
#9
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
eof_a := eof(f2);Логично, но я бы до этого не додумался(( Спасибо большое ![]() |
![]() ![]() |
![]() |
Текстовая версия | 9.12.2023 11:53 |