私は次のような関数を書きました:
def collatz(number):
'''
Function takes a positive integer x as input and prints the Collatz sequence starting at x
'''
while True:
if number % 2 == 0: # If number is even
number = number/2
return number
elif number == 1:
break
else:
number = 3*number+1
return number
この関数は、次のような数値を返すことになっています。
collatz(10)
10
5
16
8
4
2
1
この関数は、次の式で機能します。
X={x/2 if x is even , if 3x+1 if x is odd
現在、1 つの数字のみを返しています。どうしたの?