import random
def check_matches(code, guess):
"""Функция для проверки количества совпадений между двумя кодами."""
matches = sum(1 for a, b in zip(code, guess) if a == b)
return matches
def main():
# Возможные варианты кодов (их 12)
codes = [
[6, 7, 8, 2, 4, 3, 0, 1, 9, 5],
[5, 6, 8, 2, 9, 0, 3, 1, 4, 7],
[3, 9, 8, 2, 7, 0, 4, 1, 5, 6],
[5, 6, 2, 1, 4, 3, 0, 8, 9, 7],
[1, 7, 2, 8, 4, 6, 0, 3, 9, 5],
[5, 2, 7, 1, 9, 1, 0, 8, 3, 6],
[3, 9, 0, 8, 7, 9, 4, 2, 5, 6],
[8, 6, 2, 1, 7, 1, 0, 3, 4, 5],
[3, 9, 8, 0, 4, 3, 6, 2, 5, 7],
[6, 7, 2, 1, 0, 4, 1, 8, 9, 5],
[8, 9, 1, 5, 7, 0, 3, 2, 4, 6],
[1, 9, 2, 8, 7, 4, 3, 0, 5, 6],
]
# Случайный выбор правильного кода из списка
system_code = random.choice(codes)
print("Выберите один из предложенных кодов:")
for i, code in enumerate(codes, 1):
print(f"{i}: {code}")
attempts = 3
while attempts > 0:
try:
choice = int(input(f"\nПопытка {4 - attempts}. Введите номер выбранного кода (1-10): ")) - 1
if choice < 0 or choice >= len(codes):
print("Некорректный номер. Пожалуйста, выберите номер от 1 до 10.")
continue
guess = codes[choice]
matches = check_matches(system_code, guess)
print(f"Вы выбрали: {guess}. Совпадений: {matches}")
if matches == len(system_code):
print("Код успешно угадан!")
return
else:
attempts -= 1
if attempts > 0:
print(f"Неверный код. У вас осталось {attempts} попыток.")
else:
print(f"Не удалось угадать код за три попытки. Правильный код был: {system_code}")
except ValueError:
print("Пожалуйста, введите корректный номер.")
if __name__ == "__main__":
main()
подобрать код
доступа, выбрав один из
предоставленных. «Кол-во
совпадений» будет показывать сколько
символов
выбранного тобой коде соответствует
символам
правильного кода.
Например, если исходный код это
«1-2-3-4-5-Б-7-В-9-0»
и ты выберешь «1-2-8-5-7-4-З-6-9-О»
выведут четыре плюса. Это
совпадения (в
местах единицы, двойки, девятки и ноля),
Учти, что показывает только
количество
совпадений, а не места, по которым
совладают
коды. Если ошибешься три раза,
система уйдет в
защиту на какое-то время
Варианты ответа приложил