

Составить программу, которая переворачивает список L, т.е. изменяет ссылки в этом списке так, чтобы его элементы оказались расположенными в обратном порядке.
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Denis |
![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 1 Пол: Мужской Реальное имя: ДЕНИС Репутация: ![]() ![]() ![]() |
Люди помогите пожалуйста написать программу
![]() ![]() Составить программу, которая переворачивает список L, т.е. изменяет ссылки в этом списке так, чтобы его элементы оказались расположенными в обратном порядке. |
Michael_Rybak |
![]()
Сообщение
#2
|
Michael_Rybak ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 046 Пол: Мужской Реальное имя: Michael_Rybak Репутация: ![]() ![]() ![]() |
Не надо дублировать темы.
Проще всего создать новую очередь, и пройтись по данной, вставляя в начало (если, конечно, очередь реализована односвязным списком). |
Sam0784 |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Репутация: ![]() ![]() ![]() |
держи!!!
program one;
uses crt;
type link=^cell;
cell=record
inf:integer;
next:link;
end;
var
p1,p,q,buf:link;
n,i:integer;
begin
clrscr;
new(q);
p:=q;
readln(n);
while n<>0 do
begin
p^.inf:=n; {standartnoe formirovanie spiska vvodim alimenti do nulia}
readln(n); {esli vveli nol to spisok zakonchilsia (nol ne vkluchaetsia)}
if n=0 then p^.next:=nil
else
begin
new(p^.next);
p:=p^.next;
end;
end;
{===== }
p:=q; {p nachalo spiska(adres pervogo alimenta)}
p1:=nil; {p1 vspomogatelnaya peremennaya}
while p<>nil do {idem ot nachala spiska do konca}
begin
buf:=p^.next; {zapominaem adres sleduschego zvena }
p^.next:=p1; {perenaprovliaem sleduschee zveno na p1 (v perviy raz budet nil konec spiska)}
p1:=p; {zapominaem v p1 adres tekuschego zvena chtob potom sleduschee napravit na nego}
p:=buf; {perehodim k sleduschemu zvenu i tak do konca spiska}
end;
p:=p1; {v p1 ostalsia adres poslednego zvena teper ono pervoe}
while p<>nil do
begin
writeln(p^.inf); {vivodim spisok na monitor dlia proverki}
p:=p^.next;
end;
readln;
end.
Сообщение отредактировано: Sam0784 - |
![]() ![]() |
![]() |
Текстовая версия | 21.04.2025 17:54 |