Информатика, вопрос задал varmilawilliams , 1 год назад

Формирование и обработка двумерных массивов на языке Pascal. 40 баллов

Зд. 3 Дана матрица К(5,5). Заполнить её случайными числами двузначными. Найти сумму элементов стоящих выше главной диагонали, произведение элементов стоящих ниже главной диагонали и среднее арифметическое элементов стоящих на главной диагонали.

Зд. 4 Дан массив А(7, 5). Найти: а) Сумму и произведение всех его элементов; б) Сумму элементов стоящих г) Суммы элементов стоящих в одной строке, для каждой строки отдельно.​

Ответы на вопрос

Ответил theWorld1212
1

Ответ:

решения задачи 3:

program matrix_operations;

uses crt;

var

K: array[1..5, 1..5] of integer; // объявление двумерного массива K размером 5x5

i, j: integer;

sum_above, prod_below, avg_diag, sum_all: integer;

begin

// заполнение матрицы случайными двузначными числами

randomize;

for i := 1 to 5 do

begin

for j := 1 to 5 do

begin

K[i, j] := random(90) + 10;

write(K[i, j]:4);

end;

writeln;

end;

// вычисление суммы элементов выше главной диагонали

sum_above := 0;

for i := 1 to 4 do

begin

for j := i + 1 to 5 do

begin

sum_above := sum_above + K[i, j];

end;

end;

writeln('Sum above diagonal: ', sum_above);

// вычисление произведения элементов ниже главной диагонали

prod_below := 1;

for i := 2 to 5 do

begin

for j := 1 to i - 1 do

begin

prod_below := prod_below * K[i, j];

end;

end;

writeln('Product below diagonal: ', prod_below);

// вычисление среднего арифметического элементов на главной диагонали

avg_diag := 0;

for i := 1 to 5 do

begin

avg_diag := avg_diag + K[i, i];

end;

avg_diag := avg_diag div 5;

writeln('Average on diagonal: ', avg_diag);

readln;

end.

решения задачи 4:

program array_operations;

uses crt;

var

A: array[1..7, 1..5] of integer; // объявление двумерного массива A размером 7x5

i, j, sum_all, prod_all: integer;

sum_row: array[1..7] of integer;

begin

// заполнение массива случайными числами

randomize;

for i := 1 to 7 do

begin

for j := 1 to 5 do

begin

A[i, j] := random(101) - 50;

write(A[i, j]:4);

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

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

end;

sum_row[i] := sum_all;

sum_all := 0;

prod_all := 1;

writeln;

end;

// вычисление суммы и произведения всех элементов

writeln('Sum of all elements: ', sum_all);

writeln('Product of all elements: ', prod_all);

// вычисление суммы элементов в каждой строке

for i := 1 to 7 do

begin

writeln('Sum of row ', i, ': ', sum_row[i]);

end

Новые вопросы