Решение задачи на языке PascalABC:
<em>Program n1;
</em>
<em>Var a:array[1..16] of integer; i:integer; //Описываем переменные
</em>
<em>Begin
</em>
<em>For i:=1 to 16 do Begin //цикл на перебор массива
</em>
<em> a[i]:=random(40)-20; //заполняем массив
</em>
<em> write(a[i],' '); //выводим значение каждого элемента массива
</em>
<em>End;
</em>
<em>writeln; //пропускаем строчку при выводе
</em>
<em>For i:=1 to 16 do Begin //цикл на перебор массива
</em>
<em> if a[i] mod 2 = 0 then //условие чётности
</em>
<em> writeln('Элемент со значением (',a[i],') под номером #',i,' является чётным'); //вывод чётных элементов и их номеров
</em>
<em>End;
</em>
<em>End.</em>
Картинка во вложении. Сначала рисуем по красным стрелкам, потом - по синим. Или наоборот.
Если я правильно понял задание, то вот:
var d, p, n:Real;
begin
d := 0; p:= 1;
while (p <= 1000) do begin
read(n);
if (n >0) then d := d-n;
p := p*n;
end
writeln();
writeln('Разность: ', d);
end.
Перевод чисел в нашу систему счисления:
1. 107 - восьмеричная
2. 235 - двоичная
3. 1989 - десятеричная
4. 58223 - шеснадцатиричная