Вопрос задан 31.07.2026 в 09:18.
Предмет Информатика.
Спрашивает Иванова Аня.
Несвежие анекдоты
Ваш друг любит пересылать вам в чат анекдоты и байки, но часто забывает, какие анекдоты он уже рассказал, причём теми же словами дословно. Чтобы не отвлекаться от важных дел на старые анекдоты, вы решили написать функцию print_only_new(message), которая печатает сообщение только если вы такое сообщение ещё никогда не получали.
Ответы на вопрос
Отвечает Гайнанова Адель.
Задача решается с помощью хранения всех уже встречавшихся сообщений. Нам нужно каждый раз проверять: было ли такое сообщение раньше. Если нет — вывести его и добавить в список просмотренных.
Для быстрой проверки лучше использовать множество (set), так как поиск элемента в нём работает в среднем за O(1).
Pythonseen_messages = set()def print_only_new(message): if message not in seen_messages: print(message) seen_messages.add(message)
Пример работы:
Pythonprint_only_new("Почему программисты любят кофе?") print_only_new("Почему программисты любят кофе?") print_only_new("Шутка про кота")
Вывод:
Почему программисты любят кофе? Шутка про кота
Первый анекдот выводится только при первом получении, а повторный полностью игнорируется. Множество seen_messages хранит все сообщения, которые уже были переданы функции.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

