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

1 Вариант.

Для матрицы А(4 строки, 5 столбцов) вычислить выражение Y=M1 M5+M2 M4+...+ M1M5, где Mk-значение наибольшего элемента в k-м столбце этой матрицы.

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

Program z1;

const n=4; m=5;

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

mas=array [1..m] of real;

var i,j:integer;

A:matr;

M1:mas;

Y:real;

Procedure max(var M1:mas;A:matr;j:integer);

var i:integer;

begin

M1[j]:=A[1,j];

for i:=1 to n do

if M1[j]<A[i,j] then

M1[j]:=A[i,j];

end;

begin

for i:=1 to n do

for j:=1 to m do

readln(A[i,j]);

for j:=1 to m do

max(M1,A,j);

Y:=0;

j:=m;

for i:=1 to m do begin

Y:=Y+M1[i]*M1[j];

j:=j-1; end;

writeln(Y);

end.

2 Вариант.

Для матрицы В(5 строк, 4 столбца) вычислить выражение Y=5M1+4M2+...+1M5, где Mk-значение наименьшего элемента в k-ой строке этой матрицы.

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

Program z2;

const n=5; m=4;

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

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

var i,j:integer;

B:matr;

M1:mas;

Y:real;

Procedure min(var M1:mas;B:matr;i:integer);

var j:integer;

begin

M1[i]:=B[i,1];

for j:=1 to m do

if M1[i]>B[i,j] then

M1[i]:=B[i,j];

end;

begin

for i:=1 to n do

for j:=1 to m do

readln(B[i,j]);

for i:=1 to n do

min(M1,B,i);

Y:=0;

j:=n;

for i:=1 to n do begin

Y:=Y+j*M1[i];

j:=j-1; end;

writeln(Y);

end.

3 Вариант.

Для матрицы В(5 строк, 4 столбца) вычислить выражение Y=(С1-1)5+(С2-1)4+…+(С5-1), где Сk-среднее арифметическое значение элементов в k-ой строке матрицы В, значение которых превышают значение первого элемента в данной строке.

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

Program z3;

const n=5; m=4;

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

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

var i,j:integer;

B:matr;

C:mas;

Y:real;

Procedure arifm(var C:mas;B:matr;i:integer);

var k,j:integer;

begin

k:=0;

C[i]:=0;

for j:=2 to m do

if B[i,j]>B[i,1] then begin

C[i]:=C[i]+B[i,j];

k:=k+1; end;

C[i]:=C[i]/k;

end;

begin

for i:=1 to n do

for j:=1 to m do

readln(B[i,j]);

for i:=1 to n do

arifm(C,B,i);

Y:=0;

j:=n;

for i:=1 to n do begin

Y:=Y+exp(j*ln(C[i]-1));

j:=j-1; end;

writeln(Y);

end.

4 Вариант.

Для матрицы А(4 строки, 5 столбцов) вычислить выражение Y=(1-P5)2+(2-P4)2+…+(5-P1)2, где Pk-произведение отрицательных элементов в k-м столбце матрицы А.

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

Program z4;

const n=4; m=5;

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

mas=array [1..m] of real;

var i,j:integer;

A:matr;

P:mas;

Y:real;

Procedure proizv(var P:mas;A:matr;j:integer);

var i:integer;

begin

P[j]:=1;

for i:=1 to n do

if A[i,j]<0 then

P[j]:=P[j]*A[i,j];

end;

begin

for i:=1 to n do

for j:=1 to m do

readln(A[i,j]);

for j:=1 to m do

proizv(P,A,j);

Y:=0;

j:=m;

for i:=1 to m do begin

Y:=Y+ (i-P[j])*(i-P[j]);

j:=j-1;

end;

writeln(Y);

end.

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