#Запустите и проверьте сами - программа на Python - код программы открыт.
import random
kolWin = 0
kolSum = 0
raund = "да"
# Константы
CAR = "АВТОМОБИЛЬ"
GOAT = "КОЗЁЛ"
while raund.lower() == "да":
# Генерация случайных трех разных чисел от 0 до 2
numbers = random.sample(range(3), 3)
# Преобразование числового массива в массив строк
result = [CAR if num == 0 else GOAT for num in numbers]
try:
# Ожидание ввода от пользователя индекса массива
first_choice = int(input("Введите номер двери (1, 2 или 3): ")) - 1
# Проверка корректности ввода
if first_choice < 0 or first_choice >= len(numbers):
print("Некорректный номер двери. Попробуйте снова.")
continue
# Поиск индекса, значение которого больше нуля и не совпадает с first_choice
valid_indices = [i for i in range(len(numbers)) if numbers[i] > 0 and i != first_choice]
if valid_indices:
# Случайный выбор индекса из допустимых
chosen_index = random.choice(valid_indices)
print(f"\nЯ помогу - открою дверь номер: {chosen_index + 1}, - и там: {result[chosen_index]}")
else:
print("Нет допустимых номеров.")
# Ожидание ввода от пользователя второго выбора
second_choice = int(input("Введите, если хотите, новый номер двери (1, 2 или 3): ")) - 1
if second_choice < 0 or second_choice >= len(numbers):
print("Некорректный номер двери. Попробуйте снова.")
continue
# Вывод массива и значения по индексу second_choice
print(f"\nПорядок дверей был: {result}, \n\nЗа дверью, которую выбрали вы: {result[second_choice]}")
# Подсчет выигрышей
kolSum += 1
if not numbers[second_choice]:
kolWin += 1
except ValueError:
print("Некорректный ввод. Пожалуйста, введите число.")
continue
# Продолжение игры
raund = input("\nПродолжаем? Да/Нет: ").strip().lower()
if raund == "":
raund = "да"
# Вывод результатов
if kolSum > 0:
print(f"Вы выиграли {kolWin} раз из {kolSum}, это в процентах {int(kolWin / kolSum * 100)}%.")
else:
print("Вы не сыграли ни одной партии.")
Это сообщение отредактировал Grango - 20.02.2025 - 23:49