/*
- 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
*/
function collatz_sequence(n : number) {
console.log(n);
while (n > 1) {
if (n % 2 == 0) { // even
n = n / 2;
}
else { // odd
n = 3 * n + 1;
}
console.log(n);
}
}
collatz_sequence(9);
/*
run:
9
28
14
7
22
11
34
17
52
26
13
40
20
10
5
16
8
4
2
1
*/