Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2010, 15:37   #1
nulyjarden
Пользователь
 
Регистрация: 03.04.2010
Сообщений: 26
По умолчанию Списковые структуры.Паскаль

Помогите пожалуйста с программой.

Сформировать список целых чисел и удалить из него все четные.

Есть исходник, но неправильно работает и я если честно вообще ума не приложу как это исправить.

Uses Crt;
type ss = ^natchislo;
natchislo = record
inf : word;
next : ss;
end;
Var u,p,q : ss;
F : Boolean;
Procedure Form;
Var i : integer;
Begin
New(u);
u^.next := nil;
p:=u;
for i:=1 to 10 do
begin
new(p^.next);
p := p^.next;
p^.next := nil;
p^.inf := random(100);
end;
End;
Procedure Output;
Var I : Word;
Begin
I := 0;
p:=u^.next;
While p<>nil do
Begin
Inc(I);
WriteLn(I:2,' ',p^.inf);
p := p^.next;
End;
End;
Function FindDelete(sb : real):Boolean;
Begin
q := u;
p := u^.next
FindDelete := False;
while (not((p^.inf mod 2) = 0) and (p <> nil)) do
begin
q := q^.next;
p := p^.next;
end;
If p <> nil Then
Begin
q^.next := p^.next;
dispose(p);
FindDelete := True;
End;
End;
Begin
ClrScr;
Form;
WriteLn('Список до удаления');
Output;
F := True;
While F Do F := FindDelete(2);
WriteLn;
WriteLn('Список после удаления');
Output;
WriteLn;
readln;
End.
nulyjarden вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Структуры balalay12 Общие вопросы C/C++ 4 28.04.2010 08:57
ОСОБЕННОСТИ СТРУКТУРЫ ЗАПИСИ. Паскаль NitriNKa Помощь студентам 1 25.04.2009 17:30
Паскаль. Структуры и алгоритмы обработки данных Римма Паскаль, Turbo Pascal, PascalABC.NET 15 08.10.2007 14:58