Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1_2_7_8.doc
Скачиваний:
9
Добавлен:
19.09.2019
Размер:
112.13 Кб
Скачать

23 Вариант.

Для матрицы А(4 строки, 4 столбца) сформировать одномерный массив В из 4 элементов. Каждый элемент Вk получает значение, равное номеру максимального элемента в k-ом столбце матрицы.

Для поиска номера максимального элемента в произвольном столбце матрицы использовать процедуру.

Program z23;

const n=4;

type matr=array [1..n,1..n] of real;

mas=array [1..n] of integer;

var i,j:integer;

A:matr;

B:mas;

Procedure maximum(var B:mas;A:matr;j:integer);

var i:integer;

max:real;

begin

B[j]:=1;

max:=A[1,j];

for i:=1 to n do

if A[i,j]>max then begin

B[j]:=i;

max:=A[i,j];

end;

end;

begin

for i:=1 to n do

for j:=1 to n do

readln(A[i,j]);

for j:=1 to n do

maximum(B,A,j);

for i:=1 to n do

writeln(B[i]);

end.

24 Вариант.

В матрице А(5 строк, 4 столбца) определить номер столбца с минимальным значением среднего арифметического значения отрицательных элементов столбца.

Для вычисления среднего арифметического значения отрицательных элементов в произвольном столбце матрицы использовать процедуру.

Program z24;

const n=5; m=4;

type matr=array [1..n,1..m] of real;

var i,j,d:integer;

A:matr;

s1,s:real;

Procedure sredn(A:matr;var s:real;j:integer);

var i,k:integer;

begin

s:=0;

k:=0;

for i:=1 to n do begin

if A[i,j]<0 then begin

s:=s+A[i,j];

k:=k+1;

end;

end;

if k=0 then

s:=0

else

s:=s/k;

end;

begin

for i:=1 to n do

for j:=1 to m do

readln(A[i,j]);

d:=0;

s:=0;

for j:=1 to m do begin

sredn(A,s1,j);

if s1<s then begin

s:=s1;

d:=j;

end;

end;

writeln(d);

end.

25 Вариант.

Для каждой из двух матриц: А(3 строки, 4 столбца)и В(5 строк, 3 столбца) определить номер строки с максимальной суммой положительных элементов.

Для поиска номера такой строки в произвольной матрице использовать процедуру.

Program z25;

const n=3; m=4; l=5;

type matr=array [1..l,1..l] of real;

var i,j,k1,k2:integer;

A,B:matr;

Procedure stroka(A:matr;var k:integer;l1,l2:integer);

var i,j:integer;

s,s1:real;

begin

s:=0;

for i:=1 to l1 do begin

s1:=0;

for j:=1 to l2 do

if A[i,j]>0 then

s1:=s1+A[i,j];

if s<s1 then begin

s:=s1;

k:=i;

end;

end;

end;

begin

for i:=1 to n do

for j:=1 to m do

readln(A[i,j]);

for i:=1 to l do

for j:=1 to n do

readln(B[i,j]);

stroka(A,k1,n,m);

stroka(B,k2,l,n);

writeln(k1,k2);

end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]