【发布时间】:2017-10-24 15:49:49
【问题描述】:
我的想法是在任意范围内对以 1、3、7 和 9 结尾的数字运行 3n + 1 进程 (Collatz conjecture),并告诉代码将每个动作的长度发送到列表,所以我可以单独运行该列表上的函数。
到目前为止,我将单位数字 1,3,7 和 9 指定为:if n % 10 == 1; if n % 10 == 3 ...等等,我认为我的计划需要某种形式的嵌套 for 循环;我在添加列表的地方是拥有temp = [] 和leng = [] 并找到一种方法让代码在每次输入leng 之前自动temp.clear()。我假设有不同的方法可以做到这一点,我愿意接受任何想法。
leng = []
temp = []
def col(n):
while n != 1:
print(n)
temp.append(n)
if n % 2 == 0:
n = n // 2
else:
n = n * 3 + 1
temp.append(n)
print(n)
【问题讨论】:
-
你的问题到底是什么?
标签: python list python-3.6 collatz