Задание №16
ID: 414

Программирование: обработка последовательности чисел

Последовательность заканчивается числом 0

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, которые делятся на 11 или оканчиваются на 1.

Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность заканчивается числом 0. Число 0 является признаком окончания ввода и в последовательность не входит.

Программа должна вывести одно число: количество подходящих чисел.

Пример работы программы:

Входные данныеВыходные данные
11
21
34
44
52
0
3
Задание выполняется на компьютере. После выполнения можно посмотреть решение.

Решение

Идея решения:

  1. Считываем первое число последовательности.
  2. Создаём список b, куда будем добавлять числа, которые делятся на 11 или оканчиваются на 1.
  3. Пока не встретился ноль, проверяем каждое введённое число.
  4. Если число подходит хотя бы под одно условие, добавляем его в список с помощью append.
  5. В конце выводим количество подходящих чисел с помощью функции len.

Решение на Python:

a = int(input())  # считываем первое число
b = []  # создаём список для подходящих чисел

while a != 0:  # обрабатываем числа до нуля
    if a % 11 == 0 or a % 10 == 1:  # проверяем делимость на 11 или последнюю цифру 1
        b.append(a)  # добавляем подходящее число в список

    a = int(input())  # считываем следующее число

print(len(b))  # выводим количество подходящих чисел