Предмет: Информатика,
автор: Ерофейка
Найти сумму всех элементов двумерного массива, больших первого элемента этого массива?Язык программирования -- Паскаль.
Ответы
Автор ответа:
0
// PascalABC.NET 3.2, сборка 1417 от 28.03.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 a1:=a[0,0];
Writeln('S=',a.ElementsByRow.Skip(1).Where(x->x>a1).Sum)
end.
Пример
Количество строк в массиве: 4
Количество столбцов в массиве: 5
*** Исходный массив [4,5] ***
35 24 93 -58 -89
-51 -55 -83 49 -92
-90 89 68 28 -60
46 -57 53 -78 -42
--------------------
S=398
// Внимание! Если программа не работает, обновите версию!
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 a1:=a[0,0];
Writeln('S=',a.ElementsByRow.Skip(1).Where(x->x>a1).Sum)
end.
Пример
Количество строк в массиве: 4
Количество столбцов в массиве: 5
*** Исходный массив [4,5] ***
35 24 93 -58 -89
-51 -55 -83 49 -92
-90 89 68 28 -60
46 -57 53 -78 -42
--------------------
S=398
Автор ответа:
0
О, как я устал от ваших нравоучений, от "это не так","то не так"
Автор ответа:
0
Для только почти начинающих можете составить?)
Автор ответа:
0
Все зависит от учителей школьных. Некоторые именно так учат начинающих, а потом уже усложняют материл, рассказывая программирование так, как учат вас, чтобы вы думали, будто это просто.
Автор ответа:
0
Const
N = 3;
M = 4;
Var
A:array[1..N,1..M] of integer;
i,j:integer;
S:real;
Begin
Randomize;
S:=0;
WriteLn('Исходный массив:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
A[i,j]:=random(21)-10;
Write(A[i,j]:4)
End;
WriteLn
End;
For i:= 1 to N do
For j:= 1 to M do
if A[i,j]>A[1,1] then S:=S+A[i,j];
WriteLn('S = ',S);
End.
N = 3;
M = 4;
Var
A:array[1..N,1..M] of integer;
i,j:integer;
S:real;
Begin
Randomize;
S:=0;
WriteLn('Исходный массив:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
A[i,j]:=random(21)-10;
Write(A[i,j]:4)
End;
WriteLn
End;
For i:= 1 to N do
For j:= 1 to M do
if A[i,j]>A[1,1] then S:=S+A[i,j];
WriteLn('S = ',S);
End.
Похожие вопросы
Предмет: Математика,
автор: LaydPlay
Предмет: Алгебра,
автор: aminakonakbaeva5
Предмет: Математика,
автор: creativemaryart
Предмет: Математика,
автор: руфик3
Предмет: Алгебра,
автор: natashaburganov