Ecco gli sviluppi al variare del livello di produzione da 1 a 13 (il passo si riduce per rimanere nei margini…)
Al livello 19 la stringa è lunga 6765 caratteri e l’immagine corrispondente è
import turtle #----------------------------------------------- WIDTH =600 # Dimensione finestra HEIGHT =800 # ... LIVELLI=19 # Numero livelli #----------------------------------------------- W = -WIDTH*0.45 # Posizione iniziale H = -HEIGHT*0.45 # ... DIR = 90 # Direzione iniziale ANGOLO = 90 # Angolo a sinistra #--------------------- Passo della tartaruga SIZE = 3 #----------------------------------------------- R =['0'] REGOLE={'0':'01','1':'0'} #----------------------------------------------- def trasforma(R): R2='' for x in R: R2 += REGOLE[x] return R2 #----------------------------------------------- def prepara(): turtle.setup(width=WIDTH, height=HEIGHT) turtle.title("Livello="+str(LIVELLI)+" PASSO="+str(SIZE)) turtle.bgcolor('pink') turtle.pencolor("red") turtle.pensize(2) turtle.penup() turtle.shape('turtle') turtle.speed(0) turtle.setposition(W,H) turtle.setheading(DIR) turtle.pendown() turtle.hideturtle() #turtle.tracer(0) # Per non aspettare... #----------------------------------------------- def disegna(R): EVEN=False for x in R: turtle.forward(SIZE) if(x == '0'): if(EVEN): turtle.left(ANGOLO) else: turtle.right(ANGOLO) EVEN = ~EVEN #----------------------------------------------- for j in range(LIVELLI-1): R=trasforma(R) print(len(R), '\t', str().join(R), '\n') prepara() disegna(R)
# turtle.update()