Помогите пожалуйста очень прошу))
Задан двухмерный массив целых чисел А размером N на М, состоящий из отрицательных и положительных элементов. найти количество отрицательных элементов и их сумму. вывести на экран этот массив, затем преобразовать его, заменив отрицательные элементы на ноль.
Ответы
Ответ дал:
0
// PascalABC.NET 3.2, сборка 1437 от 03.05.2017
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк в массиве:');
var m:=ReadInteger('Количество колонок в массиве:');
Writeln('*** Исходный массив [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var s:=a.ElementsWithIndexes.Where(x->x[2]<0);
Writeln(s.Count,' отрицательных элементов с суммой ',s.Select(x->x[2]).Sum);
Writeln('*** Результирующий массив ***');
foreach var ijV in s do a[ijV[0],ijV[1]]:=0;
a.Println(4)
end.
Пример
Количество строк в массиве: 4
Количество колонок в массиве: 7
*** Исходный массив [4,7] ***
97 -4 -24 49 1 86 -15
-84 -17 -56 -76 -26 -77 49
-8 48 -29 60 20 82 90
-28 -4 -69 32 -63 -35 -72
----------------------------
17 отрицательных элементов с суммой -687
*** Результирующий массив ***
97 0 0 49 1 86 0
0 0 0 0 0 0 49
0 48 0 60 20 82 90
0 0 0 32 0 0 0
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк в массиве:');
var m:=ReadInteger('Количество колонок в массиве:');
Writeln('*** Исходный массив [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var s:=a.ElementsWithIndexes.Where(x->x[2]<0);
Writeln(s.Count,' отрицательных элементов с суммой ',s.Select(x->x[2]).Sum);
Writeln('*** Результирующий массив ***');
foreach var ijV in s do a[ijV[0],ijV[1]]:=0;
a.Println(4)
end.
Пример
Количество строк в массиве: 4
Количество колонок в массиве: 7
*** Исходный массив [4,7] ***
97 -4 -24 49 1 86 -15
-84 -17 -56 -76 -26 -77 49
-8 48 -29 60 20 82 90
-28 -4 -69 32 -63 -35 -72
----------------------------
17 отрицательных элементов с суммой -687
*** Результирующий массив ***
97 0 0 49 1 86 0
0 0 0 0 0 0 49
0 48 0 60 20 82 90
0 0 0 32 0 0 0
Ответ дал:
0
а как будет если размерность и масси писать с клавиатуры
Вас заинтересует
1 год назад
1 год назад
5 лет назад
5 лет назад
8 лет назад
9 лет назад