#include <stdio.h>
/*
- 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
*/
void collatz_sequence(int n) {
printf("%d ", n);
while (n > 1) {
if (n % 2 == 0) { // even
n = n / 2;
}
else { // odd
n = 3 * n + 1;
}
printf("%d ", n);
}
}
int main(void)
{
collatz_sequence(7);
return 0;
}
/*
run:
7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
*/