Даны три целых числа. определить , сколько среди них совпадающих . программа должна вывести одно из чисел : 3 ( если все совпадают ), 2 ( если два совпадает ) или 0 ( если все числа различны). нужно сделать на python

Поляков Евгений Александрович

Учитель информатики высшей категории

Проверено учителем

Для решения этой задачи в 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.Разбор логики работы Алгоритм работает по принципу исключения, проверяя условия от самого строгого к самому общему:

  1. Проверка на 3 (a == b == c):
    Если первое число равно второму, а второе равно третьему, значит, все три числа одинаковы. Программа выводит 3 и завершает работу.
  2. Проверка на 2 (a == b or b == c or a == c):
    Если первое условие не выполнилось, мы проверяем пары. Если хотя бы одна пара чисел совпадает (первое со вторым, второе с третьим или первое с третьим), программа выводит 2.
  3. Остальные случаи (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 числа — совпадений не было.

Я могу подготовить для вас аналогичное решение, использующее списки или функции, если это необходимо для вашей задачи. Хотите рассмотреть вариант оформления кода в виде функции?

Форма ответа

Ваш аватар