Предмет: Информатика, автор: Dardil

Задан одномерный массив А(N) (N<=60). Найти сумму его элементов,
принадлежащих интервалу [0,3]. Значением этой суммы заменить все
отрицательные элементы данного массива. В полученном массиве поменять
местами второй и предпоследний элементы. Распечатать преобразованный
массив.

Ответы

Автор ответа: gfhjkmgfhjkm20
0

Ответ:

var a:array [1..60] of integer;

n,i,s,v:integer;

begin

write('Введите количество элементов массива (n<=60) ');

readln(n);

write('Массив ');

for i:=1 to n do

begin

a[i]:=random(11)-5;

if (a[i] >= 0) and (a[i] <= 3) then s:=s+a[i];

write(a[i]:3)

end;

writeln;

write('Массив ');

for i:=1 to n do

begin

if a[i] < 0 then a[i]:=s;

write(a[i]:3)

end;

writeln;

v:=a[2];

a[2]:=a[n-1];

a[n-1]:=v;

write('Массив ');

for i:=1 to n do write(a[i]:3)

end.

Автор ответа: BobbyFresnel
1

begin

 var n := ReadInteger;

 var a := ArrRandom(n, -10, 10);

 a.Println;

 var s := a.Where(p -> p.InRange(0, 3)).Sum;

 a.Transform(p -> p < 0 ? s : p);

 Swap(a[1], a[a.High - 1]);

 a.Println

end.

Приложения:
Похожие вопросы
Предмет: Геометрия, автор: za8857239
Предмет: Литература, автор: Husen05