Решение: Подсчёт кратных пяти или девяти
Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 5 или 9. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 — признаком окончания ввода, который не входит в последовательность. Количество чисел не превышает 1000, введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: количество чисел, кратных 5 или 9.
Пример входных данных: 15, 91, 90, 0. Пример выходных данных: 2.
Решение по шагам
6 шаговСоздадим счётчик количества подходящих чисел и будем последовательно считывать числа.
$$count = 0$$Если очередное число равно 0, ввод заканчивается, поэтому цикл прерывается.
$$x = 0 \Rightarrow \text{остановка ввода}$$Для остальных чисел проверяем, делится ли число на 5 или на 9 без остатка.
$$x \bmod 5 = 0 \lor x \bmod 9 = 0$$При выполнении условия увеличиваем счётчик на единицу. В конце выводим его значение.
$$count = count + 1$$Один из вариантов программы на Python:
$$null$$Код программы:
$$count = 0 while True: x = int(input()) if x == 0: break if x % 5 == 0 or x % 9 == 0: count += 1 print(count)$$count = 0; пока вводимое число не равно 0, проверять делимость на 5 или 9 и увеличивать count; вывести count.
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Включают число 0 в подсчёт, хотя оно является только признаком окончания ввода.
Используют условие «и» вместо условия «или».
Проверяют кратность с помощью обычного деления вместо остатка от деления.
Забывают увеличить счётчик при выполнении условия.
Выводят количество введённых чисел вместо количества чисел, кратных 5 или 9.