【发布时间】:2021-08-03 03:37:35
【问题描述】:
我已经写了这个 Collatz 猜想序列。它可以工作,但如果输入浮点数而不是整数,我需要它来引发 ValueError(例如 10.0 会引发错误,但不会引发错误 10)。我已经尝试了几件事,但似乎无法完全正确。谢谢。
def Collatz(n):
collatzlist = [n]
if n > 0:
while n > 1:
if n % 2 == 0:
n = n / 2
else:
n = n * 3 + 1
collatzlist.append(n)
else:
raise ValueError()
return collatzlist
raise NotImplementedError()
【问题讨论】:
-
if type(n) != int: raise ValueError().