Шешімі: Подсчёт чисел по условию
Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 7 и оканчивающихся на ноль. Количество введённых чисел заранее неизвестно. Последовательность заканчивается числом 0, которое не входит в последовательность. Количество чисел не превышает 1000, абсолютное значение каждого введённого числа не превышает 30 000. Программа должна вывести одно число — количество чисел, кратных 7 и оканчивающихся на ноль.
В развернутом ответе приведите программу и кратко поясните алгоритм её работы.
Шешім по шагам
5 қадамВведём переменную-счётчик, первоначально равную нулю.
$$count = 0$$Будем считывать очередные числа в цикле. Число 0 является признаком окончания ввода и не обрабатывается.
Для каждого ненулевого числа проверим два условия: делится ли оно на 7 без остатка и делится ли оно на 10 без остатка. Второе условие означает, что число оканчивается на ноль.
$$x \% 7 == 0 \;\text{и}\; x \% 10 == 0$$Если оба условия выполнены, увеличим счётчик. После завершения ввода выведем его значение.
$$print(count)$$Один из возможных нұсқа программы:
$$x = int(input())\ncount = 0\nwhile x != 0:\n if x % 7 == 0 and x % 10 == 0:\n count += 1\n x = int(input())\nprint(count)$$Программа должна последовательно считывать числа до нуля, считать числа, для которых одновременно выполняются условия x % 7 == 0 и x % 10 == 0, и вывести полученное количество.
Бұл жауап талдау нәтижесінде алынды, бірақ банктің ресми кілтімен тексерілген жоқ — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Учитывают число 0 как элемент последовательности.
Проверяют только кратность 7, но не проверяют окончание числа на ноль.
Используют условие or вместо and.
Забывают считать следующее число внутри цикла.
Выводят сами подходящие числа вместо их количества.