Задание №16
ID: 404
Программирование: обработка последовательности чисел
Последовательность заканчивается числом 0
Напишите программу, которая в последовательности натуральных чисел определяет минимальное трёхзначное число, кратное 6.
Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность заканчивается числом 0. Число 0 является признаком окончания ввода и в последовательность не входит. В последовательности всегда имеется хотя бы одно подходящее число.
Программа должна вывести одно число: минимальное трёхзначное число, кратное 6.
Пример работы программы:
| Входные данные | Выходные данные |
|---|---|
| 96 102 300 114 45 0 | 102 |
Задание выполняется на компьютере. После выполнения можно посмотреть решение.
Решение
Идея решения:
- Считываем первое число последовательности.
- Создаём список
b, куда будем добавлять только трёхзначные числа, которые делятся на 6. - Пока не встретился ноль, проверяем каждое введённое число.
- Если число находится в диапазоне от 100 до 999 и делится на 6, добавляем его в список с помощью
append. - После окончания ввода считаем первое число из списка начальным минимумом.
- Перебираем список
bпо индексам и находим минимальное подходящее число. - В конце выводим найденный минимум.
Решение на Python:
a = int(input()) # считываем первое число
b = [] # создаём список для подходящих чисел
while a != 0: # обрабатываем числа до нуля
if 100 <= a <= 999 and a % 6 == 0: # проверяем трёхзначность и кратность 6
b.append(a) # добавляем подходящее число в список
a = int(input()) # считываем следующее число
m = b[0] # считаем первое подходящее число начальным минимумом
for i in range(len(b)): # перебираем список по индексам
if b[i] < m: # проверяем, меньше ли текущее число минимума
m = b[i] # обновляем минимум
print(m) # выводим минимальное подходящее число