Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Delphi. Трохи щодо методів упаковки даних

Реферат Delphi. Трохи щодо методів упаковки даних





('Open archiv: ', St,' ... ')

end;

procedure SearchNameInArchiv;

{--- надалі - пошук імені файлу в архіві ---}

begin

Seek (OutputF, FileSize (OutputF));

ErrorByte: = IOResult;

ErrorMessage;

end;

procedure DisposeCodeTable;

{ --- Знищення кодової таблиці і черги ---}

Var I: byte;

begin

For I: = 0 to 255 do Dispose (CodeTable [I]);

end;

procedure ClosePakFile;

{--- закриття архівіруемого файлу ---}

Var I: byte;

begin

If DeleteFile then Erase (InputF);

Close (InputF);

end;

procedure CloseArchiv;

{--- закриття архівного файлу ---}

begin

If FileSize (OutputF) = 0 then Erase (OutputF);

Close (OutputF);

end;

procedure InitCodeTable;

{ --- Ініціалізація таблиці кодування ---}

Var I: byte;

begin

For I: = 0 to 255 do

begin

New (CurPoint);

CodeTable [I]: = CurPoint;

With CodeTable [I] ^ do

begin

P0: = Nil;

P1: = Nil;

LengthBiteChain: = 0;

BiteChain: = 0;

CounterEnter: = 1;

Key: = True;

Index: = I;

end;

end;

For I: = 0 to 255 do

begin

If I> 0 then CodeTable [I-1] ^. NewRight: = CodeTable [I];

If I CurPoint ^. NewRight ^. CounterEnter then

begin

HelpPoint: = CurPoint ^. NewRight;

HelpPoint ^. NewLeft: = CurPoint ^. NewLeft;

CurPoint ^. NewLeft: = HelpPoint;

If HelpPoint ^. NewRightNil then HelpPoint ^. NewRight ^. NewLeft: = CurPoint;

CurPoint ^. NewRight: = HelpPoint ^. NewRight;

HelpPoint ^. NewRight: = CurPoint;

If HelpPoint ^. NewLeftNil then HelpPoint ^. NewLeft ^. NewRight: = HelpPoint;

If CurPoint = LeftRange then LeftRange: = HelpPoint;

If HelpPoint = RightRange then RightRange: = CurPoint;

CurPoint: = CurPoint ^. NewLeft;

If CurPoint = LeftRange then CurPoint: = CurPoint ^. NewRight

else CurPoint: = CurPoint ^. NewLeft;

end

else CurPoint: = CurPoint ^. NewRight;

end;

end;

procedure CounterNumberEnter;

{--- підрахунок частот входжень байтів в блоці ---}

Var C: word;

begin

For C: = 0 to NumRead-1 do

Inc (CodeTable [(InBuf [C])] ^. CounterEnter);

end;

function SearchOpenCode: boolean;

{ --- Пошук у черзі пари відкритих за Key мінімальних значень ---}

begin

CurPoint: = LeftRange;

HelpPoint: = LeftRange;

HelpPoint: = HelpPoint ^. NewRight;

While not CurPoint ^. Key do

CurPoint: = CurPoint ^. NewRight;

While (not (HelpPoint = RightRange)) and (not HelpPoint ^. Key) do

begin

HelpPoint: = He...


Назад | сторінка 6 з 10 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Creation of control system by a personnel how to begin with a zero
  • Реферат на тему: Procedure of preparation business-plan
  • Реферат на тему: Обробка набору даних, представленого у вигляді файлу
  • Реферат на тему: Практична обробка набору даних, представленого у вигляді файлу
  • Реферат на тему: Потокове шифрування файлу