Intro to Python Classwork: Math Quiz
Write a Python program named "MathQuiz.py" that randomly chooses
two integers from one to nine, along with an operator (+ - x /).
Put those random selections together to display a simple math
problem to the user, and have the user type an answer to the
problem.  Then display a random response to the user indicating
whether the answer is correct or incorrect.  Your program should
have at least five random responses for correct answers, and at
least five random responses for incorrect answers.

Since dividing two integers can result in a decimal answer, all
answers to division problems should be rounded to one decimal
place, and when a division problem is presented to the user, he/she
should be told to round his/her answer to one decimal place.

Your program does not need to perform any error trapping.  That is,
you may assume that the user will enter only numerical answers.

Your program's output should be formatted in a manner similar to
what is shown below.  You may put all of your code into the main
area of the program (that is, you are not required to create
separate functions).  The "randint" function is the only external
function that your program may import.


As always, all of your code must be your own, written entirely and
only by you within your online CodeHS.com account.  You must never
copy/paste, receive, view, or in any way use code that was created
or modified by another person, entity, or artificial intelligence.


Example Program Run #1
Welcome!  Here is your random math problem:

8 + 5 = ?

What is the answer?  13

Good job!


Example Program Run #2
Welcome!  Here is your random math problem:

2 - 9 = ?

What is the answer?  -7

Awesome!


Example Program Run #3
Welcome!  Here is your random math problem:

6 x 7 = ?

What is the answer?  42

Correct!


Example Program Run #4
Welcome!  Here is your random math problem:

3 / 8 = ?

What is the answer (rounded to the nearest tenth)?  0.4

Nice work!


Example Program Run #5
Welcome!  Here is your random math problem:

8 x 5 = ?

What is the answer?  13

Wrong!


Example Program Run #6
Welcome!  Here is your random math problem:

4 - 1 = ?

What is the answer?  -3

I don't think so!


Example Program Run #7
Welcome!  Here is your random math problem:

5 / 5 = ?

What is the answer (rounded to the nearest tenth)?  1.0

Terrific!


Example Program Run #8
Welcome!  Here is your random math problem:

7 + 2 = ?

What is the answer?  14

Nope!


Advanced Option #1
Instead of your program producing a single math problem each
time it is run, at the start of your program, ask the user how
many math problems he/she would like to see in the quiz.  Then
have your program randomly produce the requested number of math
problems.  After each problem is displayed, your program should
still ask the user to type a numerical answer, and then tell
the user if the answer is wrong or right (with random responses).

Advanced Option #2
For this advanced option, which can be completed only after the
above advanced option has been completed, after the user has
answered and been given feedback for all of the problems, your
program should provide some basic statistics by telling the user
how many problems he/she answered correctly, and how many of the
problems he/she got wrong.  In addition, the user should be shown
the percentage of correct and incorrect answers.

Advanced Option #3
For this advanced option, which can be completed only after the
first advanced option above has been completed, display all of
the quiz problems in increasing levels of difficulty.  Levels of
difficulty are increased by increasing the number of digits in
the randomly-chosen integers used in the problems.  There should
be a total of five levels of difficulty.  Level #1 uses two
single-digit integers in each problem.  Level #2 uses one single-
digit integer, along with one two-digit integer.  Level #3 uses
two two-digit integers.  Level #4 uses one two-digit integer and
one three-digit integer.  Level #5 uses two three-digit integers.
There should be as close to an equal number of problems of each
level of difficulty as possible.

Advanced Option #4
For this advanced option, which can be completed only after the
first two above advanced options have been completed, in addition
to displaying basic statistics, re-display all of the problems
that the user answered incorrectly.  For each re-shown problem,
display the user's (wrong) answer, along with the correct answer.