Как нарисовать 11-ти конечную звезду на turtle? Python
Ответы (3 шт):
Автор решения: MBo
→ Ссылка
Помогаю - нужно ехать прямо нужную длину. Потом повернуть на такой угол, чтобы получилась 11 конечная звезда.
Повторить 11 раз
А этот угол - 180-180/11 градусов (черепашка же в градусах работает?)
Автор решения: Zhihar
→ Ссылка
можно в лоб замутить:
import turtle
import math
# вычислить координаты
radius = 100
center_x = 0
center_y = 0
points_count = 21
points = [(center_x + radius * math.cos(2 * math.pi * i / points_count), center_y + radius * math.sin(2 * math.pi * i / points_count)) for i in range(points_count)]
# построить изображение
turtle.penup()
turtle.goto(points[0])
turtle.pendown()
index = 0
while True:
index += points_count // 2
index = index % points_count
turtle.setpos(points[index])
if index == 0:
break
turtle.done()
Автор решения: ПИТОНИСТ версия-3-8
→ Ссылка
from turtle import *
t = Turtle()
for i in range(11):
t.right(10)
t.fd(80)
t.left(160)
t.fd(100)
Но немного кривенькая. Вот скриншот:
А лучше ещё так (спасибо @GrAnd):
from turtle import *
t = Turtle()
for i in range(11):
t.right(180-180/11)
t.fd(200)
Вот так получится:


