Skip to content

Instantly share code, notes, and snippets.

@saucecode
Created February 16, 2015 20:27
Show Gist options
  • Save saucecode/9ed5d66e05a91e1092a9 to your computer and use it in GitHub Desktop.
Save saucecode/9ed5d66e05a91e1092a9 to your computer and use it in GitHub Desktop.
# fourthgrademaths.py
import random, time
def start(question_count):
rightAnswers = 0
wrongAnswers = 0
startTime = time.time()
for i in range(question_count):
qtype = random.randint(0,3)
if qtype == 0: # addition
a,b = random.randint(-60,60),random.randint(5,50)
answer = a + b
user_answer = int(raw_input(str(i+1) + ')\t' + str(a) + ' + ' + str(b) + ' = '))
if user_answer == answer:
rightAnswers += 1
else:
wrongAnswers += 1
raw_input('Wrong. ' + str(a) + ' + ' + str(b) + ' = ' + str(answer) + ', NOT ' + str(user_answer))
elif qtype == 1: # subtraction
a,b = random.randint(-60,60),random.randint(5,50)
answer = a - b
user_answer = int(raw_input(str(i+1) + ')\t' + str(a) + ' - ' + str(b) + ' = '))
if user_answer == answer:
rightAnswers += 1
else:
wrongAnswers += 1
raw_input('Wrong. ' + str(a) + ' - ' + str(b) + ' = ' + str(answer) + ', NOT ' + str(user_answer))
elif qtype == 2: # multiplication
a,b = random.randint(-15,15),random.randint(-15,15)
answer = a * b
user_answer = int(raw_input(str(i+1) + ')\t' + str(a) + ' x ' + str(b) + ' = '))
if user_answer == answer:
rightAnswers += 1
else:
wrongAnswers += 1
raw_input('Wrong. ' + str(a) + ' x ' + str(b) + ' = ' + str(answer) + ', NOT ' + str(user_answer))
elif qtype == 3: # division
a = random.randint(2,12)
q = random.randint(2,16)
while a == q:
q = random.randint(2,16)
b = a*q
answer = b/a
user_answer = int(raw_input(str(i+1) + ')\t' + str(b) + ' / ' + str(a) + ' = '))
if user_answer == answer:
rightAnswers += 1
else:
wrongAnswers += 1
raw_input('Wrong. ' + str(a) + ' / ' + str(b) + ' = ' + str(answer) + ', NOT ' + str(user_answer))
print 'You took',(time.time()-startTime)/60.0,'minutes'
print 'You got',rightAnswers,'out of',question_count
start(20)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment