Задание №16
ID: 414
Программирование: обработка последовательности чисел
Последовательность заканчивается числом 0
Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, которые делятся на 11 или оканчиваются на 1.
Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность заканчивается числом 0. Число 0 является признаком окончания ввода и в последовательность не входит.
Программа должна вывести одно число: количество подходящих чисел.
Пример работы программы:
| Входные данные | Выходные данные |
|---|---|
| 11 21 34 44 52 0 | 3 |
Задание выполняется на компьютере. После выполнения можно посмотреть решение.
Решение
Идея решения:
- Считываем первое число последовательности.
- Создаём список
b, куда будем добавлять числа, которые делятся на 11 или оканчиваются на 1. - Пока не встретился ноль, проверяем каждое введённое число.
- Если число подходит хотя бы под одно условие, добавляем его в список с помощью
append. - В конце выводим количество подходящих чисел с помощью функции
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)) # выводим количество подходящих чисел