LAC-5700 Operatsioonisüsteemid
Integer;
Var
vabasidKohti : Integer;
koht : Integer;
begin
koht := kohtMalus;
vabasidKohti := 0;
while ( malu[ koht ] = ' ' ) and ( koht <= maluSuurus )
do begin
koht := koht + 1;
vabasidKohti := vabasidKohti + 1;
end;
leiaVabadePositsioonideArv := vabasidKohti;
end;
{ Kirjutab m,,llu alates antud positsioonist, antud pikkuse
ja nimega bloki }
procedure kirjutaMallu( positsioon, pikkus : Integer;
BlokiNimi: Char );
Var
positsioonMalus: 1..maluSuurus;
begin
For positsioonMalus := positsioon to positsioon + pikkus
- 1 do
malu[ positsioonMalus ] := BlokiNimi;
end;
procedure votaMalu( BlokiNimi: Char; BlokiSuurus: Integer );
var
positsioonMalus : 1..maluSuurus;
leitiMalu : boolean;
vabasidPositsioone : Integer;
sobivaimPositsioon : Integer;
sobivaimaPositsiooniSuurus: Integer;
begin
leitiMalu := false;
if maluKysimiseMeetod = 1 then begin