Здравствуйте.Преподаватель сказал, что в программе есть какие-то мелкие недочёты. Сколько не искал не могу найти что неправильно. Помогите сделать программу.   Здание изначально было такое.   Дан двумерный массив. Найти наибольший чётный положительный элемент выше главной диагонали и наименьший отрицательный элемент ниже главной диагонали с указанием их индексов. Создать новый массив, в котором найденные элементы поменяются местами. 
   Требования преподавателя - числа задаются не рандомно , сделать так чтобы можно было вводить размерность массива( количество строк,столбцов)) 
   Заранее спасибо за помощь! 
   23   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   33   34   35   36   37   38   39   40   41   42   43   44   45   46   47   48   49   50   51   52   53   54   55   56   57   58   59   60   61   62   63   64   65   66   67   68   69   70   71   72   73   74   75   76   77   78   79   80   program mass;    const m = 16;    var n, i, j, ia, ja, ib, jb, t: integer;    a: array [1..m, 1..m] of integer;    fa, fb: boolean;    begin  repeat    write('n = ');    readln(n);    if (n < 2) or (n > m) then writeln('n out of range 2..', m, ', reenter.')  until (n >= 2) and (n <= m);  writeln('Enter array:');  for j := 1 to n do    for i := 1 to n do      begin        write('a[', i, ', ', j, '] = ');        readln(a[i, j])      end;  fa := false;  fb := false;  writeln('Source array:');  for j := 1 to n do    begin      for i := 1 to n do        begin          write(a[i, j]:6);          if (i > j) and not(odd(a[i, j])) and (a[i, j] >= 0)            then if fa              then begin                if (a[i, j] > a[ia, ja])                  then begin                    ia := i;                    ja := j                  end              end              else begin                ia := i;                ja := j;                fa := true;              end;          if (i < j) and (a[i, j] < 0)            then if fb              then begin                if (a[i, j] < a[ib, jb])                  then begin                    ib := i;                    jb := j                  end              end              else begin                ib := i;                jb := j;                fb := true              end        end;      writeln    end;  write('Max even positive element above principal diagonal: ');  if fa then writeln('a[', ia, ', ', ja, '] = ', a[ia, ja])        else writeln('not found.');  write('Min negative element below principal diagonal: ');  if fb then writeln('a[', ib, ', ', jb, '] = ', a[ib, jb])        else writeln('not found.');  if fa and fb    then begin      t := a[ia, ja];      a[ia, ja] := a[ib, jb];      a[ib, jb] := t;      writeln('Result:');      for j := 1 to n do        begin        for i := 1 to n do write(a[i, j]:6);        writeln      end    end    else writeln('No change.');end.
 
 |  
| 
 | 
  
 
 | 
издеваешься?
  Нужна помощь? Сюда: vkontakte.ru/berestovskiy
 
 |  
| 
 | 
  
 |