0
def game(n):
    #teaches children how to add single digit numbers
    import random
    firstNum=random.randrange(0,10) #1st random number
    secondNum=random.randrange(0,10)#2nd random number
    equation=(firstNum + secondNum)
    print(firstNum, '+', secondNum, '=')
    answer=input('Enter answer: ')
    for i in range(n):
            if equation == answer:
                    print('Correct')
            else:
                    print('Incorrect')

出力:

>>> game(3)
7 + 2 =
Enter answer: 9
Incorrect
Incorrect
Incorrect
4

3 に答える 3

3

整数と文字列を比較しています。入力値を変換します。

if equation == int(answer):
于 2013-03-01T20:00:12.173 に答える
1

そして、あなたはこのものを置く必要があります

firstNum=random.randrange(0,10) #1st random number
secondNum=random.randrange(0,10)#2nd random number
equation=(firstNum + secondNum)
print(firstNum, '+', secondNum, '=')
answer=input('Enter answer: ')

forループに

于 2013-03-01T20:01:07.497 に答える
1

上に移動for:

def game(n):
    #teaches children how to add single digit numbers
    import random
    for i in range(n):
        firstNum=random.randrange(0,10) #1st random number
        secondNum=random.randrange(0,10)#2nd random number
        equation=(firstNum + secondNum)
        print(firstNum, '+', secondNum, '=')
        answer=input('Enter answer: ')

        if equation == answer:
            print('Correct')
        else:
            print('Incorrect')

また (Python 3 を使用していない場合)、次のものを置き換えることを検討してください。

input('Enter answer: ')

int(raw_input('Enter answer: '))

なぜなら:

input(...)
    input([prompt]) -> value

    Equivalent to eval(raw_input(prompt)).

evalは Python コードのランダムなビットを実行する可能性があるためです。最近、子供たちが何を入力するかわかりません... :-)

Python 3 を使用している場合int(input('Enter answer: '))は、ループの変更に加えて...

于 2013-03-01T20:02:12.960 に答える