Решение: Сумма элементов, не делящихся на 11
Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от $-10\,000$ до $10\,000$ включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести сумму элементов массива, которые не делятся на 11. Наличие хотя бы одного такого элемента гарантируется.
Исходные данные уже объявлены и введены в массив. Разрешается не использовать некоторые из описанных переменных, но запрещается использовать переменные, не описанные в условии. В распоряжении имеются массив $A$ из 20 элементов и целочисленные переменные $I$, $J$, $K$; в Python используются массив $a$, число $n = 20$ и переменные $i$, $j$, $k$.
В ответе приведите фрагмент программы или описание алгоритма, который должен находиться на месте многоточия после ввода массива. Можно использовать любой язык программирования, указав его название и версию, либо блок-схему. При этом необходимо использовать те же исходные данные и переменные, которые предложены в условии.
Решение по шагам
3 шагаЗаведём переменную $j$ для накопления суммы и обнулим её.
$$j = 0$$Переберём все 20 элементов массива. Элемент добавляется к сумме только в том случае, если остаток от деления на 11 не равен нулю.
$$a[i] \bmod 11 \ne 0$$После завершения цикла выведем накопленную сумму.
$$j = j + a[i]$$Пример на Python:
```python
j = 0
for i in range(0, n):
if a[i] % 11 != 0:
j += a[i]
print(j)
```
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Суммируют элементы, делящиеся на 11, вместо элементов, которые не делятся на 11.
Проверяют равенство остатка нулю вместо неравенства.
Забывают обнулить переменную-сумматор перед циклом.
Используют дополнительную переменную, не объявленную в условии.