Дан массив y(11). составить программу обработки массива: 1. найти сумму отрицательных элементов массива среди элементов, стоящих на нечетных местах. 2. заменить все элементы, стоящие на нечетных местах, значениями их квадратов. 3. подсчитать количество 1, стоящих на четных местах. все это должно быть в одной , решите качественно, много . ах, да, все это на языке паскаль.
var i, sum, n: integer;
begin
randomize;
for i:=1 to 11 do begin
Y[i]:=-10+random (21);
write (Y[i], ' ');
end;
sum:=0;
for i:=1 to 11 do begin
if (i mod 2<>0) and (Y[i]<0) then sum:=Y[i]+sum; //№1
if i mod 2<>0 then Y[i]:=Y[i]*Y[i]; //№2
if (i mod 2=0) and (Y[i]=1) then inc (n); //№3
end;
writeln;
writeln ('Сумма =', sum);
writeln ('Количество 1 на четных местах =', n);
end.
n = 11;
var
x: array[1..n] of integer;
i, k, d, s: integer;
begin
Randomize;
Writeln('Элементы массива');
k := 0; s := 0;
for i := 1 to n do
begin
d := Random(11) - 5;
Write(d:3);
if (i mod 2) = 0 then begin { четное место }
if d = 1 then Inc(k);
x[i] := d
end
else begin
if d < 0 then s := s + d;
x[i] := sqr(d)
end
end;
Writeln;
Writeln('Результирующий массив');
for i := 1 to n do Write(x[i]:3);
Writeln;
Writeln('Количество единиц на четных местах равно ', k);
Writeln('Сумма отрицательных элементов на нечетных местах равна ', s)
end.
Тестовое решение:
Элементы массива
-3 0 -5 1 5 1 -3 -4 5 -3 -2
Результирующий массив
9 0 25 1 25 1 9 -4 25 -3 4
Количество единиц на четных местах равно 2
Сумма отрицательных элементов на нечетных местах равна -13