syracuse.py

Created by elodie-gamot

Created on June 29, 2022

520 Bytes


from matplotlib.pyplot import plot,show

def syracuse(m,n):
  liste=[m]
  for i in range(n-1):
    if m%2==0:
      m=int(m/2)
    else:
      m=3*m+1
    liste.append(m)
  return liste  

def syracuse_graph(m):
  X=[i for i in range(100)]
  Y=syracuse(m,100)
  plot(X,Y)
  show()
  
def syracuse_search(m):
  i=0
  while m!=1:
    if m%2==0:
      m=int(m/2)
    else:
      m=3*m+1
    i+=1
  return i

def graph():
  X=[i for i in range(2,101)]
  Y=[syracuse_search(i) for i in X]
  plot(X,Y)
  show()