Незначительная информация: я использую Lenovo Chromebook (Linux), CodePad (текстовый редактор) и терминал (как способ увидеть результат).
Цель: я хотел создать игру -подобная программа, в которой компьютер генерирует случайные значения от 0 до 100 и генерирует случайный оператор для сложения / вычитания / умножения / деления с другим случайным значением от 0 до 100. Если вы ответили на вопрос правильно, ваша оценка повысится на 1, и если это неправильно, ваш счет уменьшается на 1.
Проблема : Программа хорошо работает со всеми операторами, кроме деления. Я хочу, чтобы ответ деления был округлен до сотых. Например: 23/54 = 0,42592592592. Я хочу, чтобы программа приняла его как 0,43.
Вот что у меня есть: (Может ли кто-нибудь отредактировать мой код ниже на Python, я не уверен как).
from random import randint
import random
score = 0
while True:
num1 = randint(0,100)
num2 = randint(0,100)
op = random.choice(["+", "-", "*", "/"])
if op == '+':
print(num1, "+", num2, "= x ")
x_answer = num1 + num2
elif op == '-':
print(num1, '-', num2, '= x')
x_answer = num1 - num2
elif op == '*':
print(num1, "*", num2, "= x")
x_answer = num1 * num2
elif op == "/":
print(num1, "/", num2, "= x")
x_answer = num1 / num2
else:
print("Invalid Operator")
x = float(input("What's x? "))
if x == x_answer:
score += 1
print("CORRECT, your score is:", score)
elif x != x_answer:
score -= 1
print("INCORRECT, you lost a point! Current score:", score)
Опять же, чтобы повторить проблему: когда есть вопрос о разделении, ответ должен быть полным (пример: 0,432 ...). Я хочу, чтобы компьютер принял 0,43 в качестве ответа и дал оценку go вверх, если ответ 0,43.