Задание №16 — Алгоритмы и программирование
Напишите программу, которая в последовательности натуральных чисел определяет сумму всех чисел, кратных 6 и оканчивающихся
на 4. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 100. Введённые числа не превышают 300.
Программа должна вывести одно число: сумму всех чисел, кратных 6 и оканчивающихся на 4.
Пример работы программы:
Входные данные | Выходные данные |
14 24 12 | 168 |
Проверка решения с помощью ИИ доступна авторизованным пользователям
Решение.
Для решения этой задачи нам необходимо организовать цикл чтения чисел до тех пор, пока не будет введён ноль. Для каждого введённого числа мы будем проверять два условия одновременно.
1. Разбор условий:
— Число должно быть кратно 6. В программировании это проверяется с помощью остатка от деления: .
— Число должно оканчиваться на 4. Последнюю цифру числа в десятичной системе счисления можно получить как остаток от деления на 10: .
2. Алгоритм действий:
— Создаём переменную-счётчик для суммы и обнуляем её: .
— Считываем первое число последовательности.
— Запускаем цикл while, который работает, пока введённое число не равно 0.
— Внутри цикла проверяем: если (число делится на 6 без остатка) И (остаток от деления на 10 равен 4), то прибавляем это число к нашей сумме .
— Считываем следующее число, чтобы цикл мог продолжиться или завершиться.
3. Пример реализации на языке Python:
s = 0
x = int(input())
while x != 0:
if x % 6 == 0 and x % 10 == 4:
s += x
x = int(input())
print(s)
4. Проверка на примере:
Ввод: 14, 24, 144, 22, 12, 0.
— 14: на 6 не делится.
— 24: делится на 6 () и оканчивается на 4. Подходит. .
— 144: делится на 6 () и оканчивается на 4. Подходит. .
— 22: на 6 не делится, на 4 не оканчивается.
— 12: делится на 6, но оканчивается на 2. Не подходит.
— 0: конец ввода.
Итоговая сумма: .
Ответ: 168
Источник: ФИПИ