Страница 1 из 1

Паскаль,работа со списками

Добавлено: 28 мар 2009, 18:04
ge4r
добрый день
задача:
из исходного списка путем копирования создать 2 списка,в 1должны быть те слова которые начинаются на заданную комбинацию букв,во 2ом-которые заканчиваюца на эту комбинацию. исходный список и искомая комбинация вводится с клавиатуры

ввод есть:

Код: Выделить всё

type
PList=^TList;
TList=record
 s:string;
 Next,Prev:PList;
end;


var first,Curent,NewI:PList;
s:string;
begin
repeat
readln(s);
new(NewI);
if First=nil then First:=NewI;
NewI^.s:=s;
NewI^.Prev:=Curent;
if Curent<>nil then Curent^.Next:=NewI;
Curent:=NewI;
until s='';
end;




теперь из этого списка нужно вытащить слова начинающиеся и заканчивающиеся на нужную комбинацию,и раскидать по 2ум другим спискам
вот только не пойму,как идти по этому списку,выдергивая из него слово и проверяя его pos'ом...

Re: Паскаль,работа со списками

Добавлено: 28 мар 2009, 22:01
dr.Jekill
У тебя двусвязный список, т.е. ты можешь двигаться по списку назад и вперед. Последние указатели равны nil. Ты можешь перебирать элементы списка в любую сторону и если встретится элемент, содержательная часть(s:string ;) , которого удовлетворяет условию, ты можешь делать с этим элементом (и его s) всё что хочешь.