def collatz_sequence(n):
"""Generate the Collatz sequence for a given number n."""
if n <= 0:
raise ValueError("Input must be a positive integer.")
sequence = [n] # Start with the initial number
while n != 1:
if n % 2 == 0:
n //= 2 # n is even
else:
n = 3 * n + 1 # n is odd
sequence.append(n)
return sequence
def main():
try:
number = int(input("Enter a positive integer: "))
sequence = collatz_sequence(number)
print(f"Collatz sequence for {number}:")
print(" -> ".join(map(str, sequence)))
except ValueError as e:
print(e)
if __name__ == "__main__":
main()