Помощь - Поиск - Пользователи - Календарь
Полная версия: Вопрос по Однонаправленным спискам > Информатика / Программирование
Образовательный студенческий форум > Другие дисциплины > Информатика / Программирование
roches
Помогите с задачкой, вообщем тема Однонаправленные списки, динамические данные.
вот такое вот задание: Слово, заканчивающееся точкой, вывести в обратном порядке (используя рекурсию).

есть указания, что для организации однонаправленного списка использовать типы ввида:
Type Ukaz=^Zveno;
Zveno=Record
Next:Ukaz;
Info:char;
end;

Помогите пожалйста, с чего начать хотя бы, да и нейпойму куда здесь рекурсию прекрутить то(
creer
Можно посмотреть, например, здесь.
roches
Цитата(creer @ 13.12.2007, 8:58) *

Можно посмотреть, например, здесь.

Да это я читал, а толку( я ни как не пойму смысл, в чем заключается этих динамических ссылок,
сначала надо в список вводимы данные упорядочить а только потом обрабатывать? пример бы какой простой с организацией в список и обработкой(
Julia
Просто интересно, какую оценку вы получили на вступительном экзамене по русскому языку?

Пример создания линейного однонаправленного списка без заглавного элемента в прямом порядке следования:


type Ss=^elem;
elem=record
inf:byte;
next:ss
end;
var p,q,l:ss;
{i,E,E1,N:byte;}
begin
write('Vvedi kolichestvo elementov ');
readln(N);
write('Vvedi elementi spiska ');
new(p); {выделяем ячейку памяти для нового элемента и устанавливаем на нее указатель p}
read(p^.inf); {считываем с клавиатуры значение для этого элемента и заносим его в информационную часть}
l:=p; {устанавливаем ссылку l на ту же ячейку памяти, что и p }
for i:=1 to n-1 do {добавление в список оставшихся элементов}
begin
new(q);
read(q^.inf);
l^.next:=q; {связываем последний элемент списка с созданным элементом}
l:=q {переустанавливаем ссылку l на ячейку q}
end;
l^.next:=nil; {ссылочной части последнего элемента присваиваем пустую ссылку nil}
...


Здесь каждый элемент списка содержит информационную часть - число типа byte и ссылочную - ссылку на следующий элемент. Список определяется ссылкой на первый элемент p. Эту ссылку не стоит ни двигать, ни уничтожать, иначе вы потеряете доступ к списку.
Список - структура данных последовательного доступа, т.е. чтобы обратиться к какому-либо элементу списка, отличному от первого, мы должны последовательно пройти по ссылкам всех предыдущих элементов.

Пример: Вставить в список после указанного элемента заданное число.
type Ss=^elem;
elem=record
inf:byte;
next:ss
end;
var p,q,l:ss;
i,E,E1,N:byte;
begin
write('Vvedi kolichestvo elementov ');
readln(N);
write('Vvedi elementi spiska ');
new(p);
read(p^.inf);
l:=p;
for i:=1 to n-1 do
begin
new(q);
read(q^.inf);
l^.next:=q;
l:=q
end;
l^.next:=nil;
write('Vvedi element iz spiska i celoe chislo ');
readln(E,E1);
q:=p;
for i:=1 to N do
if q^.inf=E then
begin
new(l);
l^.inf:=E1;
l^.next:=q^.next;
q^.next:=l;
q:=l^.next
end
else q:=q^.next;
q:=p;
writeln('Poluchennii spisok:');
while q<>nil do
begin
write(q^.inf,' ');
q:=q^.next
end
end.
roches
[quote name='Julia' date='16.12.2007, 12:18' post='8680']
Просто интересно, какую оценку вы получили на вступительном экзамене по русскому языку?
[quote]
пасипа за кот) осень благотарен. цьмоки
Неругайсо насяльника ма, рафшана плохо говарить по русски. bleh.gif
Руководитель проекта
За такое отношение к русскому языку даже в математическом форуме можно получить «бан».
roches
Цитата(Руководитель проекта @ 16.12.2007, 16:11) *

За такое отношение к русскому языку даже в математическом форуме можно получить «бан».

нуну, тогда если за ошибки всех банить, то начнитес с себя,
пишется не "...даже в математическом форуме..." а правельнее будет
"...даже НА математическом форуме..."
Руководитель проекта
Цитата(roches @ 16.12.2007, 19:56) *

Ну-ну, тогда если за ошибки всех банить, то начнитес с себя.
Пишется не "...даже в математическом форуме...", а правильнее будет
"...даже НА математическом форуме..."

Еще нужны комментарии?
Julia
Все. Хватит. Идите в другую тему.
Руководитель проекта
Цитата(Julia @ 17.12.2007, 10:44) *

Все. Хватит. Идите в другую тему.

Согласен. А эту тему закроем.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.