Решение: Подсчёт чисел по условию
Напишите программу, которая в последовательности натуральных чисел определяет количество таких чисел, которые кратны 4 и оканчиваются на 2. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 1000. Введённые числа не превышают 30 000.
Программа должна вывести одно число: количество чисел, кратных 4 и оканчивающихся на 2.
Пример работы программы: на вход подаются числа 12, 140, 22, 0; программа выводит 1.
Решение по шагам
4 шагаВводим счётчик подходящих чисел и считываем очередное число.
$$count = 0$$Если введено 0, последовательность закончена. Иначе проверяем кратность 4 и последнюю цифру числа.
$$n \bmod 4 = 0 \land n \bmod 10 = 2$$При выполнении обоих условий увеличиваем счётчик. После окончания ввода выводим его значение.
$$count = count + 1$$Один из возможных вариантов программы на Python:
$$n = int(input())\ncount = 0\nwhile n != 0:\n if n % 4 == 0 and n % 10 == 2:\n count += 1\n n = int(input())\nprint(count)$$n = int(input())
count = 0
while n != 0:
if n % 4 == 0 and n % 10 == 2:
count += 1
n = int(input())
print(count)
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Учитывают число 0 как элемент последовательности.
Проверяют только кратность 4 или только последнюю цифру.
Используют деление вместо операции получения остатка от деления.
Забывают считать очередное число внутри цикла.