Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

01 семестр / Разное / Готовые решённые задачи в формате ТХТ / Матрицы / Задача 10 (перестановка наибольшего и наименьшего элемента в каждом столбце)

.txt
Источник:
Скачиваний:
267
Добавлен:
04.03.2014
Размер:
1.44 Кб
Скачать
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 then begin
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.