1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Atreides |
2.05.2005 18:40
Сообщение
#1
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: 0 |
Список я написал. Но народ подскажите, пожалуйста, как вот для таково односвязного списка стек сделать процедуру добавления и удаления элемента. И объясните, как производится добавление и откуда должно происходить удаление, если добавлять нужно с головы. Не это понятно, что в стеке добавление и удаление должно происходить только с одного и того же места, но какой элемент будет удаляться? Это мой список, где id – это номер, а str – значение элемента.
Doit_Item – элемент, над которым производят действие. Остальное думаю понятно. Код uses SysUtils; Type Steck=^nsteck; Nsteck=record Id:cardinal; Str:string[99]; Next:steck; End; Var head:steck; Procedure Add_Item(head:steck); Var New_Item,Doit_Item:steck; Begin GetMem(New_Item,sizeof(steck)); If New_Item<>Nil then Begin Writeln('id:'); Readln(New_Item.id); Writeln('str:'); Readln(New_Item.str); New_Item.next:=Nil then head:=New_Item else Begin Doit_Item:head While Doit_Item.next<>Nil do Doit_Item:-Doit_Item.next; Doit_Item.next:=New_Item; End; End; End. Сообщение отредактировано: Atreides - 2.05.2005 18:42 -------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
![]() ![]() |
| Atreides |
10.05.2005 18:30
Сообщение
#2
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: 0 |
Не что я не понял :molitva: , как этими модулями пользоваться то? Там есть готовый список Стек, так? И к нему нужно подписать процедуры, так что ли? А какие нужны процедуры и функции и в каком порядке? Help, ни как не могу сообразить с этими списками!
-------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
Atreides Создание списков 2.05.2005 18:40
volvo А вот тут посмотреть? FAQ: Стеки
P.S. А почему в ... 2.05.2005 18:45
Digitalator а в пасе разве есть SysUtils ? это уже из делфи ..... 2.05.2005 20:10
Atreides Теперь понял, элемент, который я только что добави... 5.05.2005 20:19
volvo Иди по той же ссылке - там прикреплен модуль, в не... 5.05.2005 20:23
volvo
Ну, а если воспользоваться поиском по слову Stack... 10.05.2005 18:44
Atreides Там процедура удаления не подходит к моему списку ... 14.05.2005 15:12
volvo
Проще - не значит правильнее... Если тебе нравитс... 14.05.2005 15:23![]() ![]() |
|
Текстовая версия | 8.12.2025 13:30 |