Я пытаюсь изменить 3 вещи в своем коде.
Сделать так, чтобы 'Ответы' соответствовали тому же набору random.randomint, который использовался для 'Вопросов'.
Дайте пользователю возможность выбрать определенный оператор, который будет использоваться для теста вместо случайных операторов.
Для операторов вычитания убедитесь, что первый операнд больше, чемвторой операнд, поэтому программа не дает отрицательных ответов.
Любые ответы приветствуются.Вот мой код:
import random
print("Welcome to the maths quiz creator!")
CLASS = input("Please enter the class name: ")
NAME = input("Please enter your name: ")
NoofQ = int(input("How many questions for the quiz? "))
<- ПЕРВЫЙ ФАЙЛ ДЛЯ ВОПРОСОВ ->
output_file = open('{}_quiz.txt'.format(CLASS), 'w')
print("Class:", CLASS)
print("Teacher:", NAME)
output_file.write("Class: ")
output_file.write(CLASS)
output_file.write("\nTeacher: ")
output_file.write(NAME)
for question_num in range(1,NoofQ +1):
ops = ['*','/','+','-']
rand=random.randint(1,12)
rand2=random.randint(1,12)
operation = random.choice(ops)
maths = eval(str(rand) + operation + str(rand2))
Questions = '\n {}: {} {} {} {} {}'.format(question_num, rand, operation, rand2, "=", "________")
print(Questions)
output_file.write(Questions)
output_file.close()
<- ВТОРОЙ ФАЙЛ ДЛЯ ОТВЕТОВ ->
output_file = open('{}_answers.txt'.format(CLASS), 'w')
print("Class:", CLASS)
print("Teacher:", NAME)
output_file.write("Class: ")
output_file.write(CLASS)
output_file.write("\nTeacher: ")
output_file.write(NAME)
for question_num in range(1, NoofQ +1):
ops = ['*','/','+','-']
rand=random.randint(1,12)
rand2=random.randint(1,12)
operation = random.choice(ops)
maths = eval(str(rand) + operation + str(rand2))
Answers = '\n {}: {} {} {} {} {}'. format(question_num, rand, operation, rand2, "=", int(maths))
print(Answers)
output_file.write(Answers)
output_file.close()
Я довольно новичок в Python, пишу с помощью программы Pycharm.Спасибо.