Решение: Сумма чисел по условию
Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 6 и оканчивающихся на 2. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 6 и оканчивающееся на 2.
Количество чисел не превышает 100. Введённые числа по модулю не превышают 300.
Программа должна вывести одно число: сумму чисел, кратных 6 и оканчивающихся на 2.
Пример работы программы:
Входные данные:
3
12
25
42
Выходные данные:
54
Решение по шагам
4 шагаСчитываем количество чисел и создаём переменную для накопления суммы.
$$n = int(input()); s = 0$$Повторяем ввод и обработку для каждого числа последовательности.
$$for i in range(n):$$Число подходит, если оно делится на 6 без остатка и имеет последнюю цифру 2.
$$x \bmod 6 = 0 \land x \bmod 10 = 2$$Подходящие числа прибавляем к сумме, после чего выводим результат.
$$s = s + x$$n = int(input())
s = 0
for _ in range(n):
x = int(input())
if x % 6 == 0 and x % 10 == 2:
s += x
print(s)
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Проверяют только кратность 6, но не проверяют последнюю цифру.
Используют условие с оператором or вместо and.
Забывают вывести накопленную сумму после завершения цикла.
Суммируют все числа, а не только подходящие.