Ya hemos visto como hacer la definición de un cuadrado, este cuadrado empieza y termina en el vertice izquierdo superior, el desafió sería hacer una definición de un cuadrado centrado. Imaginemos a la tortuga en el centro del cuadrado apuntando hacia la derecha.
def cuadrado_centrado(pasos):
t.forward(pasos/2) #avanzamos la mitad del lado
t.right(90) #giramos a derecha 90 grados
t.forward(pasos/2) #avanzamos la mitad del lado
for i in range(3): # hacemos tres veces la tarea
t.right(90) #giramos a derecha 90 grados
t.forward(pasos) #avanzamos un lado
t.right(90) #giramos a derecha 90 grados
t.forward(pasos/2) #avanzamos la mitad del lado
t.left(90) # giramos a la izquierda
t.backward(pasos/2)# retrocedemos la mitad del lado
Aclaración todo lo que escribamos después "#" es un comentario, no se ejecuta en python.
si usamos esta definición obtenemos los siguiente cuadrado_centrado(50)
Es evidente que la tortuga a dejado su rastro en todo el camino recorrido, para que la tortuga
no deje rastro usamos t.penup() , es decir levantamos el lapiz, y t.pendow() para bajar el lápiz
de modo que la tortuga deje su rastro. Nosotros deberemos levantar el lapiz en el primer avance y en
el retroceso final. Vemos como quedaría nuestra definición cuadrado_centrado.
def cuadrado_centrado(pasos):
t.penup() #levanto el lapiz
t.forward(pasos/2)
t.pendown() # bajo el lapiz
t.right(90)
t.forward(pasos/2)
for i in range(3):
t.right(90)
t.forward(pasos)
t.right(90)
t.forward(pasos/2)
t.left(90)
t.penup() #levanto el lapiz
t.backward(pasos/2)
t.pendown() # bajo el lapiz
Este es el resultado que obtenemos:
https://repl.it/@MarioAntonioAnt/cuadradocentrado#main.py Este ejercicio lo puede visualizar en la plataforma repl.it, allí puede obtener un usuario gratis, le permitirá practicar sin necesidad de instalar python en su computadora.