1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Krjuger |
17.05.2009 16:54
Сообщение
#1
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
В общем задача заключается в том что надо из текстового файла заполнить дек и взять последние "Б" элементов и записать их в стек.Суть вопроса заключается в том какую реализацию выбрать.первый скособ это создать процедуру котора берет элемент из дека и пишет в стек,а вторая уже выполняет первую до выполнения условия(достижение Б),либо сделать лиш одну процедуру,которая делает все сразу.
Вот описание стека и дека.Вопрос в том можно ли создать лиш одну буферную переменную или делать через две.каждого типа. |
![]() ![]() |
| Krjuger |
22.05.2009 17:22
Сообщение
#2
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Цитата Если Цитата текстовый файл все тот же, то дерево в принципе не будет заполняться, ибо уже при чтении первой записи у тебя будет вылет: { не является целым числом. Точка, все дальнейшее - неправда. Если чуть-чуть изменить входной файл (продублировать целое число, находящееся в каждой строке), то дерево будет построено, и даже выведено на экран: Введённые данные:male boris 1995 1995male kor 1955 1955male bob 1912 1912male bob 1912 1912fomale maria 1965 1965fomale ksenia 1915 1915fomale rita 1915 1915Отображение в виде дерева:fomale ritafomale kseniafomale mariamale borismale kormale bobmale bob Да это мой косяк,добавить добавил а упомянуть об этом забыл. Цитата Walk:=Find(Root); If Walk=Nil Then WriteLn('Элемент не найден.'); WriteLn('Найден элемент:'); Show(Walk^.Inf); WriteLn; Что это? То есть, ты сообщаешь, что элемент не найден, и тут же разыменовываешь nil? Интересная концепция... если я правильно понял,то должно быть так Код Walk:=Find(Root); If Walk=Nil Then WriteLn('Элемент не найден.') else begin WriteLn('Найден элемент:'); Show(Walk^.Inf); WriteLn; end; Сообщение отредактировано: Krjuger - 22.05.2009 17:23 |
Krjuger Задача на стек и дек. 17.05.2009 16:54
volvo Я уже задавал тебе этот вопрос, ты решил, что лучш... 17.05.2009 18:44
Krjuger Не, стек и дек обязательно должны быть,это принцип... 17.05.2009 21:38
volvo Нет, конечно... В смысле, неправильно. Сам же сказ... 18.05.2009 22:24
Krjuger Могу удивить он компилируется в легкую.Так насчет ... 18.05.2009 22:28
volvo Ты сказки-то будешь внукам рассказывать... Это ком... 18.05.2009 22:59
Krjuger Вот полная прога.Теперь, вроде, стек заполняется ,... 19.05.2009 12:50
volvo Если б работало так, как задумывал, может и пригод... 20.05.2009 17:38
Krjuger
Извини,с этим разделом я не знаком.Программа рабо... 20.05.2009 19:11
volvo Ты файл test.txt наконец покажешь или нет? Я ж не ... 21.05.2009 18:29
Krjuger Хорошо вот текстовый файл и оновленный вариант про... 21.05.2009 18:49
volvo В результате ты хочешь получить вот такой результа... 21.05.2009 19:04
Krjuger Вообще мне необходимо получить генеагогическое де... 21.05.2009 20:01
volvo Значит, так. Дерево создается неправильно, пересма... 21.05.2009 20:26
Krjuger В общем я почитал пяток другой факов и немного пер... 22.05.2009 15:42
volvo Если , то дерево в принципе не будет заполняться, ... 22.05.2009 16:49
Krjuger Вроде я понял о чем ты так усердно пытался мне ска... 22.05.2009 18:47
Krjuger При этом,если сделать в процедуре
Procedure AddS... 22.05.2009 19:24![]() ![]() |
|
Текстовая версия | 10.12.2025 20:11 |