Решение: Сумма чисел по условию
Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 6 и оканчивающихся на 8. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 6 и оканчивающееся на 8. Количество чисел не превышает 100. Введённые числа по модулю не превышают 300. Программа должна вывести одно число: сумму чисел, кратных 6 и оканчивающихся на 8.
Решение по шагам
3 шагаСначала считываем количество чисел и создаём переменную для накопления суммы.
$$s = 0$$Для каждого числа проверяем, делится ли оно на 6 без остатка и имеет ли последнюю цифру 8.
$$x \% 6 == 0 \ \text{and} \ x \% 10 == 8$$Если оба условия истинны, прибавляем число к сумме. После обработки всей последовательности выводим сумму.
$$s = s + x$$n = int(input())
s = 0
for _ in range(n):
x = int(input())
if x % 6 == 0 and x % 10 == 8:
s += x
print(s)
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Использование or вместо and.
Проверка окончания числа на 8 с помощью деления вместо остатка от деления на 10.
Вывод каждого подходящего числа вместо их суммы.
Забытый вывод накопленной суммы после завершения цикла.