const
handsfree = false;
nmax = 10;
random_min = -50;
random_max = 50;
var
a: array[0..nmax] of real;
i, n: integer;
sum, x: real;
begin
{ввод массива}
n := nmax;
if handsfree then begin
for i := 0 to n do
begin
a[i] := random(random_max - random_min) + random_min;
write(a[i], ' ');
end
end
else begin
for i := 0 to n do
readln(a[i]);
end;
writeln();
{подсчет суммы}
write('x = ');
readln(x);
sum := a[n];
for i := n - 1 downto 0 do
sum := sum * x + a[i];
writeln('S = ', sqrt(sum));
end.
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println;
var se:=a.Where((x,i)->i.IsOdd).Sum;
var pn:=a.Where(x->x<0).Aggregate(BigInteger(1),(p,q)->p*q);
var ko:=a.Where(x->x.IsOdd).Count;
Writeln('Сумма элементов с четными номерами: ',se);
Writeln('Произведение отрицательных элементов: ',pn);
Writeln('Количество нечетных элементов: ',ko)
end.
Пример
n= 17
7 -60 -7 -96 -14 97 7 -68 -89 -87 -50 49 77 -52 -36 -15 99
Сумма элементов с четными номерами: -232
Произведение отрицательных элементов: -417286023598080000
Количество нечетных элементов: 10
begin
var a:=ReadArrInteger('Вводите:',ReadInteger('n='));
a.Println;
a.Transform(x->x<0?abs(x):x>0?x*x:x); a.Println
end.
Пример
n= 17
Вводите: 7 -60 -7 -96 -14 97 7 -68 -89 -87 -50 49 77 -52 -36 -15 99
7 -60 -7 -96 -14 97 7 -68 -89 -87 -50 49 77 -52 -36 -15 99
49 60 7 96 14 9409 49 68 89 87 50 2401 5929 52 36 15 9801
begin
var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println;
var im:=a.IndexMax;
swap(a[0],a[im]); a.Println;
end.
Пример
n= 16
-73 -46 76 92 -57 -57 81 -96 -92 18 -76 89 13 -83 69 56
92 -46 76 -73 -57 -57 81 -96 -92 18 -76 89 13 -83 69 56