![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
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);Логично, но я бы до этого не додумался(( Спасибо большое ![]() |
![]() ![]() |
![]() |
Текстовая версия | 20.06.2025 14:14 |