python - 我怎样才能将这些数字放入列表中?

标签 python list collatz

所以我有这个 Collat​​z 猜想作业。基本上我必须编写一个程序,我给它一个数字,它会计算它的 Collat​​z 猜想。但这是我的问题:将出现的数字将这样写:

12
6
3
10
5
16
8
4
2
1

当它们应该出现在这样的列表中时 [12, 6, 3, 10, 5, 16, 8, 4, 2, 1]。

这是我的代码:

n = int(input("The number is: "))
while n != 1:
  print(n)
  if n % 2 == 0:
     n //= 2
  else:
     n = n * 3 + 1
print(1)

最佳答案

您必须将数字存储在列表中

result = []
while n != 1: 
      result.append(n) 
      if n % 2 == 0:
          n //= 2
      else:
          n = n * 3 + 1
result.append(n) 

print result

关于python - 我怎样才能将这些数字放入列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19790944/

相关文章:

collat​​z c代码逻辑错误

python - 为什么 python 'in' 运算符根据元组大小表现不同?

python - Kruskal 迷宫算法的 Python 实现问题

python - 如何计算数据框列中的出现次数?

python - 优化此 python 日志解析代码

python - 计算列表中子列表的特定索引中值的实例,但每个列表只计算一次

python - 将某种类型的 0 添加到局部变量时,Numba 抖动会改变结果

java - 为什么 Collat​​z 猜想程序不适用于 Java 中的大整数

javascript - 检查列表元素是否具有类时需要单击两次

java - 为应用程序类创建双向链表