import turtle as t
import math
#shape drawer function on turtle
def drawer(a1, a2, b, ang, dist, clr): #a1 -> y-axis, a2 -> x-axis, b -> size of squares
#define screen and drawer
pen = t.Turtle()
pen.shape("turtle")
#define initial position
pen.penup()
pen.setposition(-(a2-0.5)*b, (a1-0.5)*b) #shape centered
pen.pendown()
for y in range(a1): #number of lines (y-axis)
for x in range(a2): #number of squares on the same line (x-axis)
for s in range(4): #square shape
if y <= 6:
pen.color(colors[y%6]) #!!!!
pen.forward(b)
pen.right(90)
elif y > 6:
colors2 = colors[::-1] #!!!!
pen.color(colors2[(y-1)%6])
pen.forward(b)
pen.right(90)
pen.penup()
pen.forward(2*b)
pen.pendown()
pen.penup()
pen.right(ang)
pen.forward(dist)
pen.left(ang)
pen.pendown()
t.done()
#user-defined input
n_line = int(input("Enter the number of lines of the shape:\n")) #y-axis
n_sqr = int(input("Enter the number of squares in a line:\n")) #x-axis
sqr = int(input("Enter the size of the squares:\n"))
#trigonometric functions to adjust the shape on turtle
n_ang = 180 - math.degrees(math.atan(1/n_sqr))
n_dist = 1/(math.sin(math.radians(n_ang))/(2*sqr))
colors = ["yellow", "orange", "red", "green", "blue", "purple"] #defined colors
drawer(n_line, n_sqr, sqr, n_ang, n_dist, colors)
Это мой код; делая квадраты в черепахе, каждая линия разных цветов. Я хочу сделать квадратные цвета по порядку в первых 6 строках, а затем сделать их цвета в обратном порядке; 7-я строка синяя, 8-я линия зеленая, 9-я линия красная и т. Д. c ... Собственно, моя основная идея заключалась в том, чтобы создать цветную волну:
- Номера строк от 1-6 желтого до фиолетового
- Номера строк 7-12 от фиолетового до желтого
- Номера строк 13-18 от желтого до фиолетового
- Номера строк 19-24 от фиолетового до желтого
et c ...
Я не мог создать алгоритм для этой волны, есть идеи? PS Пожалуйста, проверьте # !!!! закомментированные строки ..