Задание №16 — Алгоритмы и программирование
Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 8. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 8.
Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000.
Программа должна вывести одно число: максимальное число, кратное 8.
Пример работы программы:
Входные данные | Выходные данные |
3 | 24 |
Проверка решения с помощью ИИ доступна авторизованным пользователям
Решение.
Для решения этой задачи нам необходимо обработать последовательность чисел и найти среди тех, что делятся на 8, самое большое.
Шаг 1: Инициализация переменной для максимума.
Создадим переменную , в которой будем хранить текущее максимальное число, кратное 8. Так как по условию в последовательности натуральные числа и хотя бы одно кратное 8 точно есть, мы можем инициализировать её нулём: . Любое натуральное число, кратное 8, будет больше нуля.
Шаг 2: Чтение количества чисел.
Сначала программа считывает число — количество элементов в последовательности.
Шаг 3: Цикл обработки чисел.
Запустим цикл, который повторится раз. На каждой итерации цикла:
1. Считываем очередное число .
2. Проверяем условие: делится ли на 8 без остатка? В программировании это записывается как .
3. Если число кратно 8, сравниваем его с нашим текущим максимумом . Если , то обновляем значение максимума: .
Шаг 4: Вывод результата.
После завершения цикла в переменной будет храниться самое большое число из тех, что подошли под условие. Выводим его на экран.
Пример реализации на языке Python:
n = int(input())
max_val = 0
for i in range(n):
x = int(input())
if x % 8 == 0 and x > max_val:
max_val = x
print(max_val)
Разберём пример из условия:
1. Вводим .
2. Первое число . Оно кратно 8 () и . Теперь .
3. Второе число . Оно кратно 8 () и . Теперь .
4. Третье число . Оно не кратно 8. Пропускаем.
5. Итог: .
Ответ: 24
Источник: ФИПИ