Дан массив a(n). найти сумму элементов на чётных местах и произведение элементов, кратных 3.

плюскваммиперфекти плюскваммиперфекти    1   26.07.2019 18:30    0

Ответы
svetaelia svetaelia  07.08.2020 14:53
Const n=10; 
var a:array[1..n] of integer;
i,s,p:integer;
begin
writeln('Исходный массив:');
for i:=1 to n do
 begin
 a[i]:=random(21)-10;
 write(a[i]:4);
 end;
writeln;
s:=0; 
p:=1;
for i:=1 to n do
 begin
 if i mod 2 = 0 then s:=s+a[i];
 if a[i] mod 3 = 0 then p:=p*a[i];
 end;
writeln('s = ',s,'   p = ',p);
end.

Пример:
Исходный массив:
  -4  -9   2  -2   4   6  -8  -5   7  -5
s = -15   p = -54
ПОКАЗАТЬ ОТВЕТЫ
mooziviycom mooziviycom  07.08.2020 14:53
// PascalABC.NET 3.1, сборка 1218 от 12.04.2016
begin
  var a:=ArrRandom(ReadInteger('n='),1,90);
  a.Println;
  Writeln('S=',a.Where((x,i)->i.IsOdd).Sum);
  Writeln('П=',a.Where(x->x mod 3=0).Aggregate(1.0,(p,x)->p*x))
end.

Тестовое решение:
n= 20
67 50 13 23 55 33 54 21 86 68 70 87 87 83 90 55 7 22 27 1
S=443
П=688290496740
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика