Collatz Conjecture matplotlip - PullRequest
       7

Collatz Conjecture matplotlip

0 голосов
/ 30 октября 2019
Trying to plot a range of 2 -'x' numbers with all there iterations.

Наконец-то я получил график, показывающий итерации, необходимые для достижения «1» любого заданного числа. Но я пытаюсь заставить его построить итерации 2 - х чисел. Единственная причина, по которой я знаю, это делать со списком, но я не могу создать количество «х» списка из воздуха. Я попытался использовать 'for i in range', но он не создает новые строки matplolib, а только обновляет существующую. Если у кого-то есть идеи, я бы с удовольствием их услышал.

import math
import matplotlib as mpl
import matplotlib.pyplot as plt

def collatz(x):
  x_coordinates = []
  y_coordinates = []
  count = 1
  current_number = 0
  while x != 1:  
     if x % 2 == 0:
         x=x/2
         count=count+1
         current_number=current_number+1 
         x_coordinates.append(x)
         y_coordinates.append(current_number+1)
     else:
         x=(x*3)+1
         count=count+1
         current_number=current_number+1 
         x_coordinates.append(x)
         y_coordinates.append(current_number)
  while x == 1:
    plt.plot(x_coordinates, y_coordinates)
    plt.savefig('plot.png')
    return x_coordinates, x_coordinates, current_number


for i in range(1):
  collatz(1000)

Если я не могу выполнить итерации чисел 'x', я бы хотел выполнить итерации либо 100, либо 1000.

...