Witam, w programie potrzebuję mieć dostęp do informacji, który wiersz będzie pierwszym wolnym, robię to za pomocą tablicy boolean'ów, napisałem następującą funkcję
function wolny_wiersz(var wiersze : array of boolean):byte;
var
i : byte;
jest : boolean;
begin
i:= 1;
jest:= false;
while (not jest) and (i <= 50) do
if wiersze[i]=true then inc(i)
else begin
wolny_wiersz:= i;
jest:= true;
wiersze[i]:= true;
end;
if not jest then wolny_wiersz:= 51;
end;
jednak zwraca ona złe wartości - np. gdy wiersze[1]:= true to funkcja dalej zwraca wartość "1", gdy wiersze[2]:=true to zwraca "2" itd. Nie wiem jak poprawić ten kod, by funkcja działała tak, że będzie zwracała indeks w którym jest pierwsza z wartości false a nie ostatnia z wartości true..
Pozdrawiam