编写一个名为collatz()的函数,它有一个名为number的参数:
如果参数是偶数,那么collatz()就打印出number//2,并返回该值;
如果number是奇数,那么collatz()就打印,并返回3*number+1。
然后编写一个程序,让用户输入一个整数,并不断对这个数调用,collatz(),直到函数返回值1(让人惊奇的是,这个序列对于任何整数都有效,利用这个序列,你迟早会得到1!
def collatz(number):
if number % 2 == 0:
return number // 2
elif number % 2 == 1:
return 3 * number + 1
else:
print("Error")
print("Plese input a number:",end = '')
while True:
try:
result = int(input())
break
except ValueError:
print("Your number is not a int")
while True:
print(result)
result = collatz(result)
if result == 1:
break
print(str(result))