czemu to nie dziala:
type
TMainForm = class(TForm)
{...}
public
karty: array of array of Integer;
wylosowane: array[1..24] of Integer;
procedure Rozdaj;
end;
{...}
procedure TMainForm.Rozdaj;
var
i: Integer;
x, y, z: Integer;
max, max2: integer;
tmp: Integer;
function sprawdz(a: integer): integer;
var
i: Integer;
begin
for i:= 1 to 24 do
begin
if (a = wylosowane[i]) and (a < 24) then
a:= sprawdz(a + 1)
else if (a = wylosowane[i]) and (a = 24) then
a:= sprawdz(1);
end;
Result:= a;
end;
begin
max:= strtoint(Edit1.Text);
max2:= 24 div max;
for i:= 1 to 24 do
wylosowane[i]:= 0;
SetLength(karty, max, max2);
for x:= 0 to max do
for y:= 0 to max2 do
karty[x][y]:= 0;
i:= 1;
for x:= 0 to max do
begin
for y:= 0 to max2 do
begin
Randomize;
z:= Random(24) + 1;
tmp:= sprawdz(z);
wylosowane[i]:= tmp;
karty[x][y]:= tmp;
inc(i);
end;
end;
end;
procedura rozdaj jest wywolywana przy kliknieciu buttona
i pojawia sie blad pamieci albo zamyka sie program