Написать программу для решения следующей задачи. В двумерном массиве, состоящем из целочисленных элементов, поменять местами в каждой строке наибольший и первый не принадлежащий интервалу (a, b) элементы. (паскаль)

Написать программу для решения следующей задачи. В двумерном массиве, состоящем из целочисленных элементов, поменять местами в каждой строке наибольший и первый не принадлежащий интервалу (a, b) элементы. (паскаль)
Гость
Ответ(ы) на вопрос:
Гость
const   m = 5; n = 10; a = 20; b = 80; // Массив имеет размер mxn, интервал задан границами [a;b] var   i, j, max, outint, T, nT, nI: integer;   Mas: array[1..m, 1..n] of integer; begin   Randomize;   for i := 1 to m do     for j := 1 to n do       Mas[i, j] := Random(100);   writeln('Исходный массив');   for i := 1 to m do   begin     for j := 1 to n do       write(Mas[i, j], ' ');     writeln;   end;   Mas[i, j] := Random(100);   for i := 1 to m do   begin     max := -1; // все элементы полагаются неотрицательными     nI:=0;     for j := 1 to n do     begin       T := Mas[i, j];       if T > max then begin         max := T; nT := j       end;       if nI = 0 then         if (T <= a) or (T >= b) then nI := j     end;     if nI > 0 then begin       T := Mas[i, nT]; Mas[i, nT] := Mas[i, nI]; Mas[i, nI] := T     end   end;   writeln('Результирующий массив');   for i := 1 to m do   begin     for j := 1 to n do       write(Mas[i, j], ' ');     writeln;   end end. Пример выполнения программы в PascalABC.NET Исходный массив 34 56 89 27 71 0 64 89 80 36 15 59 95 54 37 15 81 64 48 39 89 42 71 55 97 80 48 65 98 55 85 27 45 39 37 74 98 7 7 31 28 56 14 3 45 39 98 19 93 4 Результирующий массив 34 56 89 27 71 0 64 89 80 36 95 59 15 54 37 15 81 64 48 39 98 42 71 55 97 80 48 65 89 55 98 27 45 39 37 74 85 7 7 31 28 56 98 3 45 39 14 19 93 55
Не нашли ответ?
Ответить на вопрос
Похожие вопросы