Дан массив R (М, M). Переставить строку с минимальным элементом ** главной диагонали со...

0 голосов
40 просмотров

Дан массив R (М, M). Переставить строку с минимальным элементом на главной диагонали со строкой с заданным номером.PascalABC


Информатика (35 баллов) | 40 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Const
  m=10;
var
  R:array[1..m,1..m] of integer;
  i,j,t,p,q:integer;
begin
  Write('Введите номер строки (1..10) для перестановки: ');
  Read(q);
  Randomize;
  Writeln('Исходный массив');
  for i:=1 to m do begin
    for j:=1 to m do begin
      R[i,j]:=Random(90)+10;
      Write(R[i,j]:3);
      end;
    Writeln
  end;
  p:=1;
  for i:=2 to m do
    if R[i,i]  if p<>q then begin
    Writeln('Результирующий массив');
    for j:=1 to m do begin
      t:=R[p,j]; R[p,j]:=R[q,j]; R[q,j]:=t
      end;
    for i:=1 to m do begin
      for j:=1 to m do Write(R[i,j]:3);
      Writeln
      end
    end
end.      
       
Пример
Введите номер строки (1..10) для перестановки: 3
Исходный массив
 50 86 52 85 96 69 44 51 20 77
 55 79 39 73 98 74 65 65 63 80
 64 89 83 55 98 74 85 63 90 52
 37 42 64 84 66 78 67 31 56 34
 69 18 34 48 42 44 12 91 67 47
 72 19 14 22 53 61 13 97 87 31
 83 80 61 67 50 22 25 55 16 29
 16 44 19 39 20 55 65 44 23 63
 72 93 96 52 79 27 38 52 40 15
 75 70 44 34 50 88 57 66 97 29
Результирующий массив
 50 86 52 85 96 69 44 51 20 77
 55 79 39 73 98 74 65 65 63 80
 83 80 61 67 50 22 25 55 16 29
 37 42 64 84 66 78 67 31 56 34
 69 18 34 48 42 44 12 91 67 47
 72 19 14 22 53 61 13 97 87 31
 64 89 83 55 98 74 85 63 90 52
 16 44 19 39 20 55 65 44 23 63
 72 93 96 52 79 27 38 52 40 15
 75 70 44 34 50 88 57 66 97 29

(150k баллов)