Дана квадратная целочисленная матрица порядка n. Сформировать результирующий одномерный
Дана квадратная целочисленная матрица порядка n. Сформировать результирующий одномерный массив, элементами которого являются построчные средние арифметические значения нечетных частей начальной матрицы. Задачка на Pascal.
Задать свой вопрос2 ответа
Трензелева
Алёна
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк/столбцов в матрице:');
Writeln('*** Исходная матрица ***');
var a:=MatrRandom(n,n,-99,99);
a.Println(4); Writeln(n*4*'-');
var b:=a.Rows.Select(row-gt;row.Where(t-gt;t.IsOdd).DefaultIfEmpty.Average)
.ToArray;
b.Println;
end.
Пример
Количество строк/столбцов в матрице: 5
*** Исходная матрица ***
40 -38 16 -70 26
87 7 -31 99 34
-34 -47 -33 32 56
66 71 41 7 80
55 42 -22 7 86
--------------------
0 40.5 -40 39.6666666666667 31
Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк/столбцов в матрице:');
Writeln('*** Исходная матрица ***');
var a:=MatrRandom(n,n,-99,99);
a.Println(4); Writeln(n*4*'-');
var b:=a.Rows.Select(row-gt;row.Where(t-gt;t.IsOdd).DefaultIfEmpty.Average)
.ToArray;
b.Println;
end.
Пример
Количество строк/столбцов в матрице: 5
*** Исходная матрица ***
40 -38 16 -70 26
87 7 -31 99 34
-34 -47 -33 32 56
66 71 41 7 80
55 42 -22 7 86
--------------------
0 40.5 -40 39.6666666666667 31
Полина Шишанкина
Program sector;
const
n=10;
var
a:array [1..n,1..n] of integer;
b:array [1..n] of real;
i,j,z: byte;
begin
randomize;
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=random (40);
a[i,j]:=a[i,j]-20;
write(a[i,j]:4);
end;
writeln;
end;
for i:=1 to n do begin
z:=0;
for j:=1 to i do
if (a[i,j] mod 2 lt;gt; 0) then z:=z+a[i,j];
b[i]:=z/2;
writeln(i,' ',b[i]);
end;
readln;
end.
const
n=10;
var
a:array [1..n,1..n] of integer;
b:array [1..n] of real;
i,j,z: byte;
begin
randomize;
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=random (40);
a[i,j]:=a[i,j]-20;
write(a[i,j]:4);
end;
writeln;
end;
for i:=1 to n do begin
z:=0;
for j:=1 to i do
if (a[i,j] mod 2 lt;gt; 0) then z:=z+a[i,j];
b[i]:=z/2;
writeln(i,' ',b[i]);
end;
readln;
end.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов