<em>// PascalABC.NET 3.2, сборка 1431 от 28.04.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a:=ArrRandom(ReadInteger('n='),-20,20).Select(i->i/10).ToArray;
Write('Массив: '); a.Println;
Writeln('Сумма элементов с нечетными номерами: ',
a.Where((x,i)->i.IsEven).Sum);
var i1:=a.FindIndex(x->x<0);
var i2:=a.FindLastIndex(x->x<0);
Write('Вторая искомая сумма: ');
if i2=i1 then Writeln(0)
else Writeln(a[i1+1:i2].Sum);
Write('Сжатый массив: ');
a:=a.Where(x->abs(x)>1).ToArray; a.Println;
end.
<u>Пример</u>
n= 10
Массив: 1.8 0.2 1 -2 0.1 0.4 -1 1.2 -1.4 0.6
Сумма элементов с нечетными номерами: 0.5
Вторая искомая сумма: 0.7
Сжатый массив: 1.8 -2 1.2 -1.4
На PascalABC.NET
begin
var (a,b):=(random(10)+1,random(10)+1);
var k: integer;
if a>b then k:=a*b
else k:=a+b;
writeln(a,b,k);
end.
var
S: real;
i, k, l: integer;
begin
S := 1;
for i := 1 to 12 do
begin
k := 1; l := 1;
while (k <= i) do
begin
l := l * 3;
k := k + 1;
end;
S := S + 1 / l;
end;
writeln(S);
end.
-------------
function len(s: integer): byte;
var
i, l: byte;
begin
l := s;
while (l > 0) do
begin
l := l div 10;
inc(i);
end;
len := i;
end;
var
i: integer;
begin
i := 3;
repeat
i := i * 3;
until (len(i) = 6);
writeln(i);
end.
---------------
var
D, x: real;
y: integer;
begin
readln(x);
if (x > 0) then
for y := 1 to 5 do
D := D + (y + cos(x))
else
begin
D := 1;
while (y <= 10) do
begin
D := D * (y - x);
inc(y);
end;
end;
writeln('D = ', D);
end.
1 кб = 1024 байт
1 мб = 1024 кб
1 гб = 1024 мб
1 тб = 1024 гб
1 пб = 1024 гб
P.S. - Буква "т" в конце лишняя)