Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции к экзамену ГТК.docx
Скачиваний:
16
Добавлен:
26.09.2019
Размер:
339.82 Кб
Скачать

Фрагменты вычисления характеристик двумерного массива

Рассмотрим фрагменты программ в таблице 3.

Таблица 3

Характеристика

Для всех элементов

Для части элементов

  1. Сумма

s

s:=0;

for i:=1 to m do

for j:=1 to n do

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

s:=0;

for i:=1 to m do

for j:=1 to n do

if A[i,j]>z then

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

  1. Количество

k

k:=m*n;

k:=0;

for i:=1 to m do

for j:=1 to n do

if A[i,j]>z then

k:=k+1;

  1. Произведение

p

p:=1;

for i:=1 to m do

for j:=1 to n do

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

p:=1;

for i:=1 to m do

for j:=1 to n do

if A[i,j]>z then

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

  1. Максимальное значение

max

max:=A[1,1];

for i:=1 to m do

for j:=1 to n do

if A[i,j]>max then

max:=A[i,j];

max:=-1E10;

for i:=1 to m do

for j:=1 to n do

if (A[i,j]>max) and (A[i,j]>z)

then max:=A[i,j];

  1. Минимальное значение

min

min:=A[1,1];

for i:=1 to m do

for j:=1 to n do

if A[i,j]<min then

min:=A[i,j];

min:=1E10;

for i:=1 to m do

for j:=1 to n do

if (A[i,j]<min) and (A[i,j]>z)

then min:=A[i,j];

  1. Среднее значение

sr

s:=0;

for i:=1 to m do

for j:=1 to n do

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

sr:=s/(m*n);

s:=0;

k:=0;

for i:=1 to m do

for j:=1 to n do

if A[i,j]>z then

begin

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

k:=k+1;

end;

sr:=s/k;

Фрагменты вычисления характеристик строк и столбцов двумерного массива

Рассмотрим фрагменты программ в таблице 4.

Таблица 4

Характеристика

Для каждой строки

Для каждого столбца

  1. Сумма

s

for i:=1 to m do

begin

s[i]:=0;

for j:=1 to n do

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

end;

for j:=1 to n do

begin

s[j]:=0;

for i:=1 to m do

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

end;

  1. Произведение

p

for i:=1 to m do

begin

p[i]:=1;

for j:=1 to n do

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

end;

for j:=1 to n do

begin

p[j]:=1;

for i:=1 to m do

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

end;

  1. Максимальное значение

max

for i:=1 to m do

begin

max[i]:=A[i,1];

for j:=1 to n do

if A[i,j]>max[i] then

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

end;

for j:=1 to n do

begin

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

for i:=1 to m do

if A[i,j]>max[j] then

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

end;

  1. Минимальное значение

min

for i:=1 to m do

begin

min[i]:=A[i,1];

for j:=1 to n do

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

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

end;

for j:=1 to n do

begin

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

for i:=1 to m do

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

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

end;