2017-02-01 66 views
-5

大家好我已經通讀了以前對這個問題的答案,並且可以得到代碼運行。我想了解的是爲什麼我的代碼無法運行。蟒蛇 - 一個collat​​z程序自動化無聊的東西

感謝

def collatz(number): 
    if number % 2 == 0: 
     return number // 2 
    elif number % 2 == 1: 
     return 3 * number + 1 

print('Enter a number') 
number = int(input()) 

while number != 1: 
    print(int(collatz(number))) 
+3

你有什麼錯誤嗎?什麼不起作用?它是無限循環嗎? – Sayse

+0

那麼你認爲代碼應該怎麼做? – MYGz

回答

2

你,所以你是停留在一個無限循環不會在你的while循環更新number

您應該將返回值collatz指定爲number,以更新number

while number != 1: 
    number = collatz(number) 
    print(number) 
+0

感謝您的回覆 – Pedro