IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Нужна помощ с однонаправленным списком
сообщение
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


В общем задача заключается в том чтобы после елемента списока P1,с ключем Х,равным задаваемому значению А,вставить список P2.


Type
TElem = string;

TList = ^TNode;
TNode = record
Info: TElem;
Next: TList
end;
var
P1,P2:TList;
r:TList;
A:integer;

Procedure Insert(var P1: Tlist; x : integer);
begin
new®;
r^.info:=x;
r^.next:=P1^.next;
P1^.next:=r;
end;


Тут я беру элемент из списка п2 и записываю его после элемента с ключем Х.В общем моя идея заключалась в том,чтобы создать процедуру,которая будет юзять insert и потихоньку выдирая из п2 по 1 элементу вставлять их каждый раз сдвигая ключ на 1,тем самым впихнуть весь список, но как это реализовать хз.

Так же есть вопрос немного в другой области.Необходимо взять из конца дека V элементов и вставить их в стек,вот тут приветствуются лбые идеи,потому что своих совсем нет(((
P.s.Просьба на фак не тыкать прочитал и не один,но если есть конкретные вещи из фака ,тобуду только рад.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Тьфу ты, совсем с катушек сьезжаю,А насчет поиска и замены,что нить сказать можеш?

И еще там внизу я скинул так другую задачу,по сути мне надо создать дек,заполнить его чем либо,и проходя с конца,записывать в пустой стек,но если переносить их по мере прохода от конца до V в стеке они будут прямо или обратно выстроены?

И еще можно оценить такой вариант создания списка из файла.


function Chartoint(var j: char): integer ;
begin
case j of
'1': Chartoint:=1;
'2': Chartoint:=2;
'3': Chartoint:=3;
'4': Chartoint:=4;
'5': Chartoint:=5;
'6': Chartoint:=6;
'7': Chartoint:=7;
'8': Chartoint:=8;
'9': Chartoint:=9;
else Chartoint:=0;
end;
end;

Procedure Probel(var fin:text);
begin
if ch=' ' then
begin
read(fin,ch);
Probel(fin);
end;
end;

Procedure Create(var p : point; var fin:text;);
var
k:integer;
r:point;
begin
new®;
reset(fin);
while not eof(fin) do
begin
read(fin,ch);
Probel(fin);
while not (ch=' ') and (not eof(fin)) do
begin
p:=chartoint(ch);
x:=x*10+k;
read(fin,ch);
end;
r^.number:=x;
p^.number:=r^.number;
p^.next:=r^.next;
x:=0;
close(fin);
end;
end;



Сообщение отредактировано: Krjuger -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 8.11.2025 14:12
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name