Дана вещественная матрица размером n х m. Переставляя ее строчки и

Дана вещественная матрица размером n х m. Переставляя ее строчки и столбцы, достигнуть того, чтоб величайший элемент (или один из их) оказался в верхнем левом углу.

Задать свой вопрос
1 ответ
Uses crt;
Type MyType = real;
Var
nbsp;nbsp;n,m,i,j,xi,xj: byte;
nbsp;nbsp;a: array[1..100,1..100] of MyType;
nbsp;
Procedure Stroka(i,i1: byte);
nbsp;nbsp;var
nbsp;nbsp;nbsp;nbsp;j: byte;
nbsp;nbsp;nbsp;nbsp;buf: MyType;
nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;For j:=1 to m do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;buf:=a[i,j];
nbsp;nbsp;nbsp;nbsp;a[i,j]:=a[i1,j];
nbsp;nbsp;nbsp;nbsp;a[i1,j]:=buf
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end
nbsp;nbsp;end;
nbsp;
Procedure Stolb(j,j1: byte);
nbsp;nbsp;var
nbsp;nbsp;nbsp;nbsp;i: byte;
nbsp;nbsp;nbsp;nbsp;buf: MyType;
nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;For i:=1 to n do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;buf:=a[i,j];
nbsp;nbsp;nbsp;nbsp;a[i,j]:=a[i,j1];
nbsp;nbsp;nbsp;nbsp;a[i,j1]:=buf
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end
nbsp;nbsp;end;
nbsp;
Begin
nbsp;nbsp;Clrscr;
nbsp;nbsp;Write(n=);
nbsp;nbsp;Readln(n);
nbsp;nbsp;Write(m=);
nbsp;nbsp;Readln(m);
nbsp;nbsp;Randomize;
nbsp;nbsp;For i:=1 to n do
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;For j:=1 to m do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;a[i,j]:=random*20-5;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Write(a[i,j]:5:1);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Writeln;
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;Writeln;
nbsp;
nbsp;nbsp;xi:=1; xj:=1;
nbsp;nbsp;For i:=1 to n do
nbsp;nbsp;For j:=1 to m do
nbsp;nbsp;nbsp;nbsp;If a[i,j] gt; a[xi,xj] then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;xi:=i;
nbsp;nbsp;nbsp;nbsp;nbsp;xj:=j
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;
nbsp;nbsp;While xi lt; n do
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Stroka(xi,xi+1);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Inc(xi)
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;While xj gt; 1 do
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Stolb(xj,xj-1);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Dec(xj)
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;
nbsp;nbsp;For i:=1 to n do
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;For j:=1 to m do write(a[i,j]:5:1);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Writeln
nbsp;nbsp;nbsp;nbsp;end;
End
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт