请帮助我了解我做错了什么。问题是
Collatz序列编写一个名为collatz()的函数,该函数具有一个名为number的参数。如果number是偶数,则collatz()应该打印数字// 2并返回该值。如果number为奇数,则collatz()应该打印并返回3 * number + 1。
然后编写一个程序,让用户输入一个整数,并继续对该数字调用collatz(),直到该函数返回值1。您将达到1!即使是数学家也不确定为什么。您的程序正在探索所谓的Collatz序列,有时称为“最简单不可能的数学问题”。)
记住要使用int()函数将input()的返回值转换为整数;否则,它将是一个字符串值。
提示:即使数字%2 == 0,整数也是偶数;如果数字%2 == 1,则整数是奇数。
def collatz(number):
if number%2==0:
print(number//2)
else:
print(3*number+1)
x = int(input('print num'))
while TRUE:
if collatz(x)!=1:
break
HUWWW
慕村225694
森林海
相关分类