Const
N = 8;
Var
A:array[1..N] of integer;
i,iMax:integer;
Begin
Randomize;
Write('Исходный массив:');
iMax:=1;
For i:= 1 to N do
Begin
A[i]:=random(21)-10;
Write(' ',A[i]);
if A[i] > A[iMax] then iMax:=i;
End;
WriteLn;
WriteLn('Max = ',A[iMax]);
WriteLn('iMax = ',iMax);
End.
Нужно умножить каждую единицу на двойку в степени n, где n - это позиция единицы справа начиная с нуля
здесь на "первом" месте справа (считаем с нуля) стоит ноль, поэтому нет 2^1
Var
x, y: real;
begin
write('Введите x: ');
readln(x);
if x <= -6 then y:=1-x
else if x <= -4 then y:=x/4
else y:=x;
writeln('y = ', y:4:2);
end.<span>
</span>
<h3>PascalABC.NET 3.4.2, сборка 1837 от 11.10.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var a := ArrRandom(30, 0, 10000); // сформировали массив
a.Println; // вывели его элементы, если не надо, уберите строку
var smax := a.Pairwise.Select(t -> t[0] + t[1]).Max; // макс. сумма в парах
a.Reverse.Select(t -> t mod 3 = 0 ? smax : t).Printlines // все остальное
end.