Для решения этой задачи в Python удобнее всего использовать условную конструкцию if-elif-else. Нам необходимо последовательно проверить количество равных между собой чисел. Программный код python
# Ввод трех целых чиселa = int(input()) b = int(input()) c = int(input()) # Проверка условийif a == b == c: print(3) elif a == b or b == c or a == c: print(2) else: print(0) Use code with caution.Разбор логики работы Алгоритм работает по принципу исключения, проверяя условия от самого строгого к самому общему:- Проверка на 3 (
a == b == c):
Если первое число равно второму, а второе равно третьему, значит, все три числа одинаковы. Программа выводит3и завершает работу. - Проверка на 2 (
a == b or b == c or a == c):
Если первое условие не выполнилось, мы проверяем пары. Если хотя бы одна пара чисел совпадает (первое со вторым, второе с третьим или первое с третьим), программа выводит2. - Остальные случаи (
else):
Если не подошло ни одно из вышеперечисленных условий, это означает, что все числа уникальны. В этом случае выводится0.
Альтернативный способ (через множества) В Python есть структура данных set (множество), которая хранит только уникальные значения. Это позволяет сократить код: python
numbers = {int(input()), int(input()), int(input())} unique_count = len(numbers) if unique_count == 1: print(3) elif unique_count == 2: print(2) else: print(0) Use code with caution.- Если в множестве осталось 1 число — все три были одинаковыми.
- Если 2 числа — была одна пара совпадений.
- Если 3 числа — совпадений не было.
Я могу подготовить для вас аналогичное решение, использующее списки или функции, если это необходимо для вашей задачи. Хотите рассмотреть вариант оформления кода в виде функции?
Форма ответа
Ответы и вопросы пользователей