Задание №16 — Алгоритмы и программирование
Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 6 или 11. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 1000. Введённые числа не превышают
30 000.
Программа должна вывести одно число: количество чисел, кратных 6 или 11.
Пример работы программы:
Входные данные | Выходные данные |
66 | 2 |
Проверка решения с помощью ИИ доступна авторизованным пользователям
Решение.
Для решения этой задачи нам необходимо организовать цикл чтения чисел до тех пор, пока не будет введён ноль. Внутри цикла мы будем проверять каждое число на соответствие условию кратности.
Шаг 1: Определение переменных.
Нам понадобятся две переменные:
1. — для хранения текущего введённого числа.
2. — счётчик чисел, удовлетворяющих условию. В начале программы установим его значение равным .
Шаг 2: Условие кратности.
Число кратно другому числу, если остаток от деления первого на второе равен нулю. В программировании для этого используется оператор взятия остатка (обычно % или mod).
Условие "кратно 6 или 11" на языке логики выглядит так:
.
Шаг 3: Алгоритм действий.
1. Считываем первое число.
2. Пока считанное число не равно :
а) Проверяем, делится ли оно на или на .
б) Если делится, увеличиваем наш счётчик на .
в) Считываем следующее число для проверки на следующей итерации цикла.
3. После завершения цикла выводим итоговое значение .
Пример реализации на языке Python:
count = 0
x = int(input())
while x != 0:
if x % 6 == 0 or x % 11 == 0:
count += 1
x = int(input())
print(count)
Разбор примера из условия:
1. Введено : делится на (и на ), условие верно. .
2. Введено : не делится ни на , ни на . не меняется.
3. Введено : не делится ни на , ни на . не меняется.
4. Введено : делится на , условие верно. .
5. Введено : цикл завершается.
Итог: .
Ответ: 2
Источник: ФИПИ