'''
- The sequence begins with a positive integer: n
- If n is odd, the next number is: 3n+1
- If n is even, the next number is: n/2
- The sequence ends with: 1
'''
def collatz_sequence(n):
lst = list()
while (n != 1) :
lst.append(n)
if (n % 2 == 0): # even
n = n // 2
else: # odd
n = (3 * n) + 1
lst.append(n) # 1
lenn = len(lst)
for i in range(0, lenn):
print(lst[i])
collatz_sequence(7)
'''
run:
7
22
11
34
17
52
26
13
40
20
10
5
16
8
4
2
1
'''