我一直在尝试编写一个 python 脚本来绘制一个数字通过 collatz 猜想所需的迭代图。在这个例子中,我只使用了一个很小的范围(只有数字 1),但是这个脚本似乎一直在运行,即使运行了 10 分钟也不会产生图表。下面是代码。有什么建议吗?
import math
import matplotlib.pyplot as plt
def collatz(x):
count = 0
while x != 1:
if x % 2 == 0:
x=x/2
count=count+1
else:
x=(x*3)+1
count=count+1
return count
x_coordinates = []
y_coordinates = []
for i in range(0, 2):
x_coordinates.append(i)
y = collatz(i)
y_coordinates.append(y)
plt.plot(x_coordinates, y_coordinates)
plt.show()