Python再次帮助

时间:2012-12-05 17:38:49

标签: python

我正在使用Python 3.2只是让你知道我在做什么,这是作业: 〜随机模块中的函数random.randint可用于从一系列值中生成整数。例如,random.randint(1,6)以相等的概率产生值1到6。一个简单的辅导程序可以随机选择0到12之间的两个数字并提出如下问题:什么是6次8?收到用户响应后,计算机会检查答案是否正确并给出令人鼓舞的评论。编写一个程序,循环10次,生成此表单的问题,并在最后为用户提供分数。

以下是我的计划中的内容:

    print ("Hello. Let's begin")
    for i in range (1,10):
        from random import randint
        x=randint (0,12)
        y=randint (0,12)
        print (x,"*" y,"=?")
        product= int(input ("What is the product?")
        if (product==x*y):
           print ("Awesome! That is correct!")
        else:
           print ("Sorry, that is not correct, but let's try another one!")

我掌握了所有这一切。它向用户询问随机乘法问题并响应十次。我不明白该怎么做就是在最后给用户一个分数。我是头脑风暴的想法,并没有多少真的有效。我想我必须做类似的事情:

    score=

但我不知道如何告诉程序计算正确答案的数量......我说得分=如果是?

然后当我打印得分时我可以说:

    if (score>5) :
       print: ("Great job! You scored a",score,"out of ten!")
    else:
       print: ("Not the best score, but you can try again! You scored a",score,"out of ten.")

或者有更简单的方法可以做到这一点吗?

2 个答案:

答案 0 :(得分:1)

似乎最简单的方法是创建一个新变量(“得分”或类似)并在循环之前将其初始化为0。然后,当您检查用户是否正确时,如果它是正确的,只需将其递增1,如果错误,则将其保持不变。

希望这有帮助!

答案 1 :(得分:0)

首先,将分数设为0

score = 0

然后在循环中尝试类似

的内容
    if (product==x*y):
       print ("Awesome! That is correct!")
       score += 1
    else:
       print ("Sorry, that is not correct, but let's try another one!")

重要的部分是score += 1,当你得到正确答案时,这会使得分增加1。您可以在循环后放入score > 5