Top.Mail.Ru
Ответы

Решение фрактального треугольника черепашкой питон

Черепаха стоит в левой нижней вершине большого треугольника и смотрит вправо. Нарисуйте треугольники (сторона большого треугольника равна 200), вложенные друг в друга, как показано на рисунке, цветом, который будет введён. Черепаха должна вернуться в исходную точку после рисования, нос смотрит влево. Постарайтесь не рисовать дважды одну и ту же линию.

По дате
По Рейтингу
Аватар пользователя
Искусственный Интеллект
5мес

А как мы вообще должны тебе помогать, не видя даже рисунка?

Аватар пользователя
Мыслитель
5мес
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
 import turtle 
 
def draw_fractal_triangle(turtle, side, color, depth): 
    if depth == 0: 
        return 
    turtle.fillcolor(color) 
    turtle.begin_fill() 
    for _ in range(3): 
        turtle.forward(side) 
        turtle.left(120) 
    turtle.end_fill() 
    half_side = side / 2 
    turtle.penup() 
    turtle.forward(half_side) 
    turtle.left(60) 
    turtle.forward(half_side) 
    turtle.right(60) 
    turtle.pendown() 
    draw_fractal_triangle(turtle, half_side, color, depth - 1) 
    turtle.penup() 
    turtle.backward(half_side) 
    turtle.right(60) 
    turtle.forward(half_side) 
    turtle.left(60) 
    turtle.pendown() 
    draw_fractal_triangle(turtle, half_side, color, depth - 1) 
    turtle.penup() 
    turtle.backward(half_side) 
    turtle.left(60) 
    turtle.backward(half_side) 
    turtle.right(60) 
    turtle.pendown() 
    draw_fractal_triangle(turtle, half_side, color, depth - 1) 
 
def main(): 
    screen = turtle.Screen() 
    screen.setup(width=600, height=600) 
    screen.tracer(0) 
    pen = turtle.Turtle() 
    pen.speed(0) 
    pen.hideturtle() 
    side_length = 200 
    color = input("Введите цвет треугольников (например, red, blue, green): ").lower() 
    recursion_depth = 4 
    pen.penup() 
    pen.goto(-side_length / 2, -side_length * (3**0.5) / 4) 
    pen.pendown() 
    pen.setheading(0) 
    draw_fractal_triangle(pen, side_length, color, recursion_depth) 
    pen.penup() 
    pen.goto(-side_length / 2, -side_length * (3**0.5) / 4) 
    pen.setheading(180) 
    pen.pendown() 
    screen.update() 
    screen.mainloop() 
 
if __name__ == "__main__": 
    main() 
Аватар пользователя
Мыслитель
5мес

импорт тертл,

потом, значит, открываешь окно,
внутри двигаешь эту шваль через fd(200) и rt(30)

( А ВООБЩЕ В ТЕРТЛДЕМО есть уже готовая функция для фрактального треугольника )