输入值后,我没有从解释器中得到任何输出。
这是我的代码:
number = int(input("Enter the number to test:"))
count = 0
if number % 2 == 0:
while number > 1:
number /= 2
count += 1
else:
while number > 1:
number = (3 * number) + 1
count += 1
print("Iteration count: " + count)
输入= 11的预期输出为15
编辑: Collatz猜想(上述)使用以下算法:如果n为偶数,则将其除以2,否则乘以3并加1。重新开始,直到得到1。 >
答案 0 :(得分:2)
您在while语句中创建了一个无限循环。您可以自己检查的一种好方法是在while循环中打印number
,这样您就可以快速看到问题所在。
我不想放弃解决方案,因为这听起来太像是家庭作业-但您必须确保满足while循环条件,否则它将永远不会退出。