IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> очередь для символов, +сделать готовые процедурки
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 111
Пол: Мужской
Реальное имя: Рома

Репутация: -  0  +


теперь вот сел за очередь ( та же задача http://forum.pascal.net.ru/index.php?showtopic=13227 ). Скатал готовый пасс ( тк своей башки на написание не хватит ), но как всегда пока переделывал чёто левое наворотил, проверьте пожалста. Я его описал ...
uses
MyQueue;
var
l,p,t: TQueue;
... вот так, но при обращении к этим переменным (када точечку ставиш smile.gif ) пишет чёто типа не могу откомпилировать пас


Прикрепленные файлы
Прикрепленный файл  MyQueue.pas ( 958 байт ) Кол-во скачиваний: 216


--------------------
Цитата
          .     .
           \__/
          (**)
(>:=:=:~~ 
  ^ ^ ^ ^ 

Креветка присваивания :DDD
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 111
Пол: Мужской
Реальное имя: Рома

Репутация: -  0  +


упс пардон smile.gif я думал ты сказал дам а не дал smile.gif
кароче чёт сложно для меня sad.gif) я вощем такую фигню накатал, вроде катит
Код
unit MyQueue;

interface

type
PNode = ^Node;
Node = record
     Info:Char;
     Next:PNode;
end;
TQueue = class
   private
     head,tail:PNode;
   public
     function Empty:Boolean;
     procedure Push (Value:Char);
     procedure Pop (var Value:Char);
     constructor Create;
     destructor Destroy; override;
end;

implementation

constructor TQueue.Create;
begin
   inherited;
   head:=nil;
   tail:=nil;
end;

destructor TQueue.Destroy;
var Value:Char;
begin
   while (not Empty) do Pop (Value);
   inherited;
end;

function TQueue.Empty:Boolean;
begin
   Empty := not assigned(head);
end;

procedure TQueue.Push (Value:Char);
var P:PNode;
begin
   new(P);
   p^.info:=value;
   p^.next:=nil;
   if empty then head:=p
   else tail^.next := p;
   tail:=p;
end;

procedure TQueue.Pop (var Value:Char);
var P:PNode;
begin
   if not Empty then
     begin
       value:=head^.info;
       p:=head;
       head:=p^.next;
       if head=nil then tail:=nil;
       dispose(p);
     end;
end;

end.


Сообщение отредактировано: kr3v3tkus -


--------------------
Цитата
          .     .
           \__/
          (**)
(>:=:=:~~ 
  ^ ^ ^ ^ 

Креветка присваивания :DDD
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 16.05.2022 19:48
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name