Python数学测验 - 输出正确或不正确

时间:2015-02-25 20:48:13

标签: python math

import random
import time
counter=0
score=0
count=0

function=['+','x','÷','-']

print('Welcome To The Arithmetic Quiz!')
name=input('Please enter you name..')
print('Thanks' , name , 'Lets Get Started!')

while counter <10:
    firstnumber=random.randint(0,12)
    secondnumber=random.randint(0,6)
    function=random.choice(function)

question=print(firstnumber, function, secondnumber, '=')
input('Answer:')
counter= counter+1

if function== '+':
                count==firstnumber+secondnumber
                if count == int (answer):
                    print ('Correct!')
                    score= score+1
                else:
                    print ('Incorrect')
elif function== 'x':
                count==firstnumber*secondnumber
                if count == int (answer):
                    print ('Correct!')
                    score= score+1
                else:
                    print ('Incorrect')
elif function== '-':
                count==firstnumber-secondnumber
                if count == int (answer):
                    print ('Correct!')
                    score= score+1
                else:
                    print ('Incorrect')
elif function== '÷':
                count==firstnumber/secondnumber
                if count == int (answer):
                    print ('Correct!')
                    score= score+1
                else:
                    print ('Incorrect')

任何人都可以更正结束部分(if函数)和(elif函数) 我认为这与变量名称有关。

它也无法正常运行,因为它停在:print('Thanks' , name , 'Lets Get Started!'),再次我不确定为什么会这样。

2 个答案:

答案 0 :(得分:0)

您的计数器在while循环内没有递增,因为您有一些严重的缩进问题。因此,您的while循环只会永远运行,并且您有一个无限循环。确保缩进代码,包括您希望在while循环中使用的计数器,以便执行该代码以及{{1循环实际停止。

<强> 编辑: 我修改了你的缩进和你的计数器。请注意,除非商正好是一个整数,否则你的除法仍然不起作用,如果你想解决这个问题,你必须自己做一些研究。

while

答案 1 :(得分:0)

正如伊丽莎白指出的那样,你的代码很难缩进。 count==number + number也应为count=number + number。 然后为函数分配一个永远不能更改的值 - 考虑更改其中一个变量名称。使用else,而不是elif来表示最终可能的情况。如何在最后打印分数。 我已经纠正了您的代码,但请先自己动手......