Задача 10 (перестановка наибольшего и наименьшего элемента в каждом столбце)

Посмотреть архив целиком
10) квадратная матрица, надо написать процедуру перестановки наибольшего и наименьшего элементов в каждом столбце и процедуру вывода/ввод в основной программе

program matrizi;

{$APPTYPE CONSOLE}

uses
SysUtils;

type mas=array[1..15,1..15] of integer;

procedure VVOD (var a:mas;var n:integer);
var i,j:integer;
begin
writeln('VVedite kolichestvo strok/stolbzov');
readln(n);
writeln('Vvedite matrizu');
for i:=1 to n do begin
for j:=1 to n do read (a[i,j]);
readln;
end;
end;

procedure POISK (var a:mas;n:integer);
var i,j,min,max,imin,imax,buf:integer;
begin
for j:=1 to n do begin
min:=a[1,j];
imin:=1;
for i:=1 to n do if a[i,j] min:=a[i,j];
imin:=i;
end;
max:=a[1,j];
imax:=1;
for i:=1 to n do if a[i,j]>max then begin
max:=a[i,j];
imax:=i;
end;
a[imax,j]:=min;
a[imin,j]:=max;
end;
end;

procedure VIVOD (a:mas;n:integer);
var i,j:integer;
begin
for i:=1 to n do begin
for j:=1 to n do write (a[i,j],' ');
writeln;
end;
end;

var A:mas;
n:integer;
begin
VVOD(A,n);
POISK(A,n);
writeln('Poluchennaya matriza');
VIVOD(A,n);
readln;
end.





Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.