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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2013, 20:02   #1
JonnyFletcher
Пользователь
 
Регистрация: 19.05.2013
Сообщений: 13
Восклицание Очередь.Робота с очередью.

Помогите я в программирование обще не селен. Буду очень благодарен! (нужно удалить элемент после определенного элемента в очереде который задается с клавиатуры.)
P.S. Нужно срочно если есть добрые люди помогите пожалуйста.

unit Unit2;

Код:
interface
type
TElement = integer;
TNodePointer = ^TNode;
TNode = record
value: TElement;
next: TNodePointer;
end;
TMyQueue = class(TObject)
private
  fHead: TNodePointer;
  fTail: TNodePointer;
public
  constructor Create;
  destructor Destroy;
  procedure Enqueue(item: TElement);
  function Dequeue: TElement;
  function isEmpty: boolean;
end;

implementation
constructor TMyQueue.Create;
begin
  fHead:= nil;
  fTail:= nil;
end;
destructor TMyQueue.Destroy;
begin
  while not isEmpty do
    Dequeue;
  fHead:= nil;
  fTail:= nil;
end;
procedure TMyQueue.Enqueue(item: TElement);
var
  temp: TNodePointer;
begin
  New(temp);
  temp^.value:= item;
  temp^.next:= nil;
  if (isEmpty) then
  begin
    fHead:= temp;
    fTail:= temp;
  end
  else
  begin
    fTail^.next:= temp;
    fTail:= temp;
  end;
end;
function TMyQueue.Dequeue: TElement;
var
  temp: TNodePointer;
begin
  if not isEmpty then
  begin
    temp:= fHead;
    fHead:= fHead^.next;
    result:= temp^.value;
    Dispose(temp);
  end
  else
    result:= 0;
end;
function TMyQueue.isEmpty: boolean;
begin
  result:= fHead = nil;
end;



end.
ПОЗЯЗЯЗЯЗЯЗЯЗЯ

Последний раз редактировалось JonnyFletcher; 26.05.2013 в 20:18.
JonnyFletcher вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с очередью печати принтеров agronomchek Помощь студентам 2 02.03.2012 15:39
Смоделировать работу с очередью digger_zl Паскаль, Turbo Pascal, PascalABC.NET 4 24.12.2011 15:39
Работа с очередью (С++) phantom4eg Помощь студентам 1 24.04.2010 17:18
Работа с Очередью в Delphi Nitrox Помощь студентам 6 30.03.2010 18:10
Работа с очередью Ongi Общие вопросы C/C++ 1 08.01.2010 19:51