Untitled
unknown
plain_text
a year ago
1.3 kB
3
Indexable
import turtle import numpy as np def draw_square(vertices): turtle.penup() turtle.goto(vertices[0]) turtle.pendown() for vertex in vertices[1:]: turtle.goto(vertex) turtle.goto(vertices[0]) def scale_square(vertices, k): new_vertices = [] for i in range(len(vertices)): start = vertices[i] end = vertices[(i + 1) % len(vertices)] new_point = (k * start[0] + (1 - k) * end[0], k * start[1] + (1 - k) * end[1]) new_vertices.append(new_point) return new_vertices # Начальные вершины квадрата vertices = [(0, 0), (0, 100), (100, 100), (100, 0)] # Вводим коэффициент масштабирования и количество повторений k = float(input("Введите коэффициент масштабирования k (<1): ")) n = int(input("Введите количество повторений n: ")) # Устанавливаем скорость черепахи turtle.speed(0) # Рисуем начальный квадрат draw_square(vertices) # Производим масштабирование и рисуем новые квадраты for _ in range(n): vertices = scale_square(vertices, k) draw_square(vertices) turtle.done()
Editor is loading...
Leave a Comment