Apr 16, 2025 | 286 words | 3 min read
6.2.1. Math Quiz#
Write a function named random_factor
that returns a random integer.
The function should have one argument which specifies how many digits the random
number it returns should have. Then use this function in a program that gives
the user a simple division problem to solve as shown below. The main
function of your program should use your random_factor
function to
generate a random \(2\) digit factor and a random \(1\) digit factor.
The numerator of the division problem should be the product of these factors.
The denominator should be the \(1\) digit factor. For example, if the
factors are \(33\) and \(6\), the numerator is \(198\), the
denominator is \(6\), and the correct answer is \(33\)
The program should then allow the user to enter the answer. If their answer is correct, a message of congratulations should be displayed. If their answer is incorrect, a message showing the correct answer should be displayed. Finally, format your program to match the samples below. Since the numbers should be randomly generated from your own code, your program will display different digits than those shown in the sample.
Sample Output#
Note
Be sure to include both correct and incorrect results in your screenshot.
Use the values in Table 6.1 below to test your program.
Case |
Digits 1 |
---|---|
1 |
89 |
2 |
100000 |
3 |
-10 |
Ensure your program’s output matches the provided samples exactly. This includes all characters, white space, and punctuation. In the samples, user input is highlighted like this for clarity, but your program should not highlight user input in this way.
Case 1 Sample Output
$ python3 math_quiz_login.py 445 ÷ 5 ---- = 89 Great job, that's correct!
Case 2 Sample Output
$ python3 math_quiz_login.py 495 ÷ 9 ---- = 100000 Sorry, the correct answer is 55.
Case 3 Sample Output
$ python3 math_quiz_login.py 104 ÷ 8 ---- = -10 Sorry, the correct answer is 13.
Deliverables#
Save your finished program as math_quiz_login.py
, replacing
login
with your Purdue login. Then submit it along with all the
deliverables listed in
Table 6.2 below.
Deliverable |
Description |
---|---|
|
Your finished program. |
Screenshot(s) |
PNG(s) capturing all 3 test cases. |