Помощь - Поиск - Пользователи - Календарь
Полная версия: Чуть-чуть доделать программку!
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Dmitriy_Rus
Помогите пожалуйста чуть-чуть доделать программку.
по заданию нужно Написать программу, которая удаляет из линейного списка входной последовательности целых чисел- первый элемент.

начало вроде правильное:
 Program Dima;
Type el=^zap;
zap=record
D:real;
L:el
end;
Var F,W:el;


далее построение списка тоже получается:
 {postroit spisok}
Procedure GreateFIFO (Var F:el);
Var W:el;
begin
new (F);
read (F^.D);
W:=F;
while not eof do
begin
new (W^.L);
W:=W^.L;
read (W^.D)
end;
W^.L:=nil
end;


вывод того же списка тоже происходит:
 {vivod spiska}
Procedure OutList (F:el);
Var W:el;
begin
W:=F;
while W<>nil do
begin
write (W^.D);
W:=W^.L
end
end;


но вот первый элемент не удаляется, подскажите что тут исправить, чтобы удалялся:
 {udalenie 1 elementa}
Function Del1 (Var P:el):el;
begin
Del1:=P;
P:=P^.L
end;
begin
GreateFIFO (F);
OutList(F)
end.
Гость
Ты между GreateFIFO и OutList Del1 пропустил.
Если ты имел в виду то, что неверно работает процедура удаления попрубуй так (если верно не пробуй):


Function Del1 (Var P:el):el;
begin
P:=P^.L;
Del1:=P;
end;
Dmitriy_Rus
Сама программа запускается и работает, но
процедура удаления вообще не работает nea.gif
просто ввожу числа, и исходный список из них же и выдается, первое число не удаляется
volvo
Цитата
просто ввожу числа, и исходный список из них же и выдается, первое число не удаляется
Ты где-то просил удалять первый элемент? Создать список - просил, вижу вызов GreateFIFO. Вывести - просил, вызов OutList тоже вижу. Где вызов Del1?
Dmitriy_Rus
всё, я разобрался. спасибо.
Lapp
Цитата(Dmitriy_Rus @ 22.12.2010 21:59) *
всё, я разобрался. спасибо.

ставлю volvo +1 от Dmitriy_Rus
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.