如何将整数作为输入,其输出将是该数字之后的Collatz 序列。该序列由以下规则计算:
- 如果 n 是偶数,则下一个数字是
n/2
- 如果 n 是奇数,则下一个数是
3n + 1
。
例如,从 11 开始
11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
这是我现在的代码:
n = int(raw_input('insert a random number'))
while n > 1:
if n%2 == 0:
n_add = [n/2]
collatz = [] + n_add
else:
n_add2 = [3*n + 1]
collatz = [] + n_add2
print collatz
如果我执行此操作并插入一个数字,则不会发生任何事情。