решение примеров для школьников

Программа случайным образом генерирует примеры на сложение или умножение
Она выводит пример на экран и ждет, пока пользователь введет свой ответ
Если пользователь вводит "exit", программа завершает свою работу
Программа проверяет, является ли введенный ответ правильным
Если ответ неправильный, программа сообщает, на сколько он меньше или больше правильного ответа
Процесс повторяется, пока пользователь не решит выйти из программы.
для этого нужно ввести число - 0


import random

# Функция для генерации примеров
def generate_example():
    # Случайный выбор операции: 0 - сложение, 1 - умножение
    operation = random.choice(['+', '*'])
   
    if operation == '+':
        num1 = random.randint(1, 100)
        num2 = random.randint(1, 100)
        correct_answer = num1 + num2
        example = f"{num1} + {num2} = ?"
    else:
        num1 = random.randint(1, 12)  # Умножаемые числа от 1 до 12
        num2 = random.randint(1, 12)
        correct_answer = num1 * num2
        example = f"{num1} * {num2} = ?"
   
    return example, correct_answer

# Основная программа
def main():
    while True:
        example, correct_answer = generate_example()
        print(example)
       
        user_answer = input("Введите ответ: ")
       
        if user_answer.lower() == '0':
            print("Выход из программы.")
            break
       
        try:
            user_answer = int(user_answer)
        except ValueError:
            print("Введите ответ:")
            continue
       
        if user_answer == correct_answer:
            print("верно")
        else:
            difference = abs(user_answer - correct_answer)
            if user_answer < correct_answer:
                print(f"Ответ неверный. Это число меньше реального на {difference}.")
            else:
                print(f"Ответ неверный. Это число больше реального на {difference}.")

# Запуск программы
if __name__ == "__main__":
    main()


Рецензии