Имеем одномерный массив(таблицу) из 10 элементов
..............................................................................................................
n = 1......2.......3......4......5......6......7......8......9.......10 номера по порядку
mas= 18.....10......-1......6.....12....4......-16....7.....15.......-3...значения элементов
.................................-1............-1.............-1.........
s=0
две строки for i:=3 to 10
если по модулю какой-то элемент начиная с третьего больше 10 то заменяем на элемент стоящий на 2 позиции назад
|-1|>10 нет, |6|>10 нет |12|>10 Да число 12 заменяем на -1
|4|>10 нет |-16|>10 Да Заменяем на -1
|7|>10 нет |15|>10 Да Заменяем на -1 |-3|>10 Нет
Получили новый массив
18 10 -1 6 -1 4 -1 7 -1 -3
Следующий блок программы Для i от 1 до 10 Если элемент <0 то в копилку Вообщем складываем все отрицательные элементы
s= -1 +(-1)+(-1)+(-1)+(-3)= -7
Выводим число - 7
Вот, пришлось вспомнить былые деньки... Эх, ностальгия... Старость х)
Заведём ещё один массив и будем в него записывать, правда ли, что в массиве есть элементы, равные данному, и текущий элемент - первый из них. Затем выведем все элементы, для которых это оказалось правдой.
Pascal
var
i, j, n: integer;
flag: boolean;
a: array[1..10000] of integer;
b: array[1..10000] of boolean;
begin
read(n);
for i := 1 to n do
begin
read(a[i]);
b[i] := true;
end;
b[n] := false;
for i := 1 to n - 1 do
if b[i] then
begin
flag := true;
for j := i + 1 to n do
if a[i] = a[j] then
begin
flag := false;
b[j] := false;
end;
if flag then
b[i] := false;
end;
for i := 1 to n do
if b[i] then
write(a[i], ' ');
end.
(23+35) : (94-92) =?
Первое действие в скобках. 23+35=58 первые скобки раскрыты. Раскрываем вторые: 94-92=2 Вторые скобки тоже раскрыты. Мы получаем:
58:2=? можно разделить устно. 58:2=29;
(23+35):(94-92)=29;
23+35=58
94-92=2
58:2=29