Почему эта сортировка не работает? Компилятор ошибок не выдает, приложение запускается, но при осуществлении сортировки, приложение крашится, и выскакивает ошибка в связи с вызовом класса исключений...
//MArr- заданный пользователем и собранный из случайных чисел 2 мерный динамический массив из int'ов
//i-строки
//j-столбцы
i:=Low(MArr);
Sort:=true;
while Sort do
begin
sort:=false;
Repeat
begin
for j:= Low(MArr[i]) to High(MArr[i]) do
begin
// перебор каждой ячейки строки от 1 до последней
if ( j<High(MArr[i]) ) then
begin
if ( MArr[i, j]>MArr[i, j+1] ) then
begin
Sort:=True;
Tmp:=MArr[i, j];
MArr[i, j]:=MArr[i, j+1];
MArr[i, j+1]:=Tmp;
end;
end
else if ( i<High(MArr) ) then
begin
if ( MArr[i, j]>MArr[i+1, 0] ) then
begin
Sort:=True;
Tmp:=MArr[i+1, 0];
MArr[i+1, 0]:=MArr[i, j];
MArr[i, j]:=Tmp;
end;
end;
end;
Inc(i);
end;
until (i=High(MArr)+1);
end;