Задание №16
ID: 402
Программирование: обработка последовательности чисел
Последовательность заканчивается числом 0
Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 5 и оканчивающееся на 0.
Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность заканчивается числом 0. Число 0 является признаком окончания ввода и в последовательность не входит. В последовательности всегда имеется хотя бы одно подходящее число.
Программа должна вывести одно число: максимальное число, кратное 5 и оканчивающееся на 0.
Пример работы программы:
| Входные данные | Выходные данные |
|---|---|
| 20 35 150 90 18 0 | 150 |
Задание выполняется на компьютере. После выполнения можно посмотреть решение.
Решение
Идея решения:
- Считываем первое число последовательности.
- Создаём список
b, куда будем добавлять числа, которые делятся на 5 и оканчиваются на 0. - Пока не встретился ноль, проверяем каждое введённое число.
- Если число подходит под условие, добавляем его в список с помощью
append. - После окончания ввода считаем первое число из списка начальным максимумом.
- Перебираем список
bпо индексам и находим максимальное подходящее число. - В конце выводим найденный максимум.
Решение на Python:
a = int(input()) # считываем первое число
b = [] # создаём список для подходящих чисел
while a != 0: # обрабатываем числа до нуля
if a % 5 == 0 and a % 10 == 0: # проверяем кратность 5 и последнюю цифру 0
b.append(a) # добавляем подходящее число в список
a = int(input()) # считываем следующее число
m = b[0] # считаем первое подходящее число начальным максимумом
for i in range(len(b)): # перебираем список по индексам
if b[i] > m: # проверяем, больше ли текущее число максимума
m = b[i] # обновляем максимум
print(m) # выводим максимальное подходящее число