почему не работает рандом в матрице и неполучается его упорядочить
uses
crt;
const n=8; {количество строк и столбцов}
var a:array[1..n,1..n] of real; {двухмерный массив}
sum:real; {сумма всех элементов массива}
i,j:integer; {индексы}
begin
clrscr;
randomize;
writeln;
writeln('Заполнение матрицы змейкой:');
writeln;
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=-2+random(4)+random;
if i mod 2=1 then
a[i,j]:=(i-1) * n + j
else a[i,j]:= i * n - j + 1;
write(a[i,j]:7:2)
end;
writeln
end;
end.