Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция6-MATR.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
2.14 Mб
Скачать

7). Вычислить средние значения элементов для строк матрицы a[n, m], имеющих нечетные номера.

for i:= 1 to n do if i mod 2 = 1 then { или odd(i) } begin

k:=0; SR[k]:=0; {SR-массив} for j:=1 to m do SR[k]:= SR[k] + a[i, j] ; SR[k]:= SR[k] / m; end; 2-й способ:

for i:= 1 to n do if odd(i) then begin Sr:=0; {SR-число} for j:=1 to m do Sr:= Sr + a[i, j] ; Sr:= Sr / m; writeln(‘строка ‘,i ,’: Sr=’,Sr:5:2); end;

8). Напечатать число элементов в первой строке матрицы, значения которых больше среднего по строке.

k:=0; for j:=1 to m do if a[1, j] > Sr then k:=k + 1; writeln(‘k=’, k);

9).Указать номер строки, имеющей наибольшее среднее значение.

max:=Sr[1]; for i:=1 to n do if Sr[i] > max then begin max:=Sr[i];

k:=i; end; writeln(‘в строке ‘, k,’ max среднее’);

10). Найти сумму элементов главной диагонали матрицы B[5x5]. S:=0; For i:=1 to 5 do S:= S + b[i, i]; writeln(‘S=’, S );

11). Все элементы, лежащие выше главной диагонали, обнулить, а элементы, лежащие ниже главной диагонали, приравнять единице. For i:=1 to 5 do For j:=1 to 5 do begin if j > i then b[i, j]:=0; {выше} if j < i then b[i, j]:=1; {ниже} end;

12). Найти суммy элементов строк матрицы a(4x5), начиная с первого отрицательного элемента строки .

Рассмотрим фрагмент этой программы на примере одномерного массива (вектора B ).

12A). Найти сумму вектора b( 2, -5, 6, -4, 3 ),

начиная с первого отрицательного элемента .

Begin

j:=1;

REPEAT {перебираем эл-ты вектора, ищем 1-й отрицательный эл-т }

K:=0; S:=0;

if a[ j]<0 then

begin

k:= j; {если нашли первый отриц. элемент, то k = номеру этого элемента , т.е. k<>0}

for n:= k to 5 do S:=S + a[ n];

{S - сумма , начиная с первого отриц. элемента}

end;

j:=j+1;

UNTIL (j>5) or (k<>0);

{выход из цикла: если перебрали все элементы (j>5) или уже встретили первый отрицательный элемент (k<>0)}

if K<>0 then

writeln('S=', S)

else

writeln(' нет отрицательных элементов');

End;

Для матрицы нужно добавить внешний цикл по i