Я новичок в программировании и читаю книгу «Как думать, как ученый». В четвертой главе говорится о функциях.
В конце главы есть упражнение, в котором меня просят нарисовать следующий шаблон с использованием модуля черепахи Python.
![enter image description here](https://i.stack.imgur.com/anQ0h.png)
Я изучал эту картину и решил разбить ее на две части: 1) линии посередине и 2) квадраты, идущие друг на друга как спираль.
Я нарисовал первую часть, используя этот код:
import turtle
wn = turtle.Screen() # Set up the window
wn.bgcolor("lightgreen")
alex = turtle.Turtle() # Create Alex
alex.color("blue")
alex.pensize(3)
for i in range(20): # Here I start drawing the lines
alex.forward(100)
alex.backward(100)
alex.left(360/20) # Fit 20 lines in the 360 degree circle
wn.mainloop()
Когда я запускаю его, он рисует это:
![enter image description here](https://i.stack.imgur.com/NOYdM.png)
Затем я создал функцию draw_square и сумел нарисовать первый квадрат:
import turtle
def draw_square(turtle, size):
for i in range(4):
turtle.forward(size)
turtle.left(90)
wn = turtle.Screen() # Set up the window
wn.bgcolor("lightgreen")
alex = turtle.Turtle() # Create Alex
alex.color("blue")
alex.pensize(3)
for i in range(20): # Here I start drawing the lines
alex.forward(100)
alex.backward(100)
alex.left(360/20) # Fit 20 lines in the 360 degree circle
# In a messy way, using what I've learned, I move Alex to where he's supposed to be now
# I'm pretty sure there's a classier way to do this
alex.penup()
alex.backward(100)
alex.right(90)
alex.forward(100)
alex.left(90)
alex.pendown()
# Here I get Alex to draw the square
draw_square(alex, 200)
wn.mainloop()
Когда я запускаю его, он рисует это:
![enter image description here](https://i.stack.imgur.com/YjbQH.png)
Теперь я застрял. Я не знаю, куда идти отсюда. Я не знаю, как рисовать все остальные квадраты. Я не могу понять, где разместить черепаху и на сколько градусов наклонить квадрат (вероятно, 20, как линии, но я не знаю, как это сделать) ... В любом случае, у вас, ребята, есть какие-то советы? Есть предложения?
Я стараюсь не пропускать никаких упражнений с книгой, и это помогло мне.