2016-11-28 115 views
-3

我試圖讓用戶輸入數字,直到它等於999.出於某種原因,輸入的第一個數字沒有註冊並出現在0.我知道我已經將它設置爲0,但那是爲了將程序推入循環。Python雖然循環到相等數

counter = 0 
equals = 0 
while equals < 999: 
    equals = equals + counter 
    print(equals) 
    if counter < 998: 
     counter = eval(input("Enter numbers to equal 999")) 
    else: 
     print("number entered is equal or over 999") 
+0

不要使用'的eval(輸入(...))''使用INT(輸入(...))'代替 –

+0

我測試了它和它的工作好麼? –

+0

好吧,出於某種原因,它似乎沒有爲我工作。我很感激幫助 – future49

回答

0

它打印0在第一次迭代,因爲你print(equals)之前從輸入讀取它。所以:

counter = 0 
equals = 0 
while equals < 999: 
    if counter < 998: 
     counter = int(input("Enter numbers to equal 999")) 
    else: 
     print("number entered is equal or over 999") 
    equals = equals + counter 
    print(equals)