• Предмет: Информатика
  • Автор: sofo4kaaaaaaaaa
  • Вопрос задан 3 месяца назад

Створи програму, що малює по-слідовність із n вкладених один в один квадратів (nвводить ко-ристувач). Відстань між сторо-нами квадратів дорівнює 10. Припустимо, що лівий верхній кут найменшого з них має коор-динати (0; 0). Тоді лівий верхній кут наступного квадрата має ко-ординати (–10; 10), наступно-го— (–20; 20) тощо.Припустимо, що i— це номер квадрата, починаючи від наймен-шого (1— найменший, 5— найбіль-ший). Запиши в зошит формули, що визначають:1)довжину сторони i-го квадрата;2)координати лівого верхнього кута i-го квадрата.У цих формулах змінну i треба множити на якісь фіксовані величини та, можливо, додавати чи віднімати величини.Склади програму за шаблоном. for i in range(1,___): turtle.up()turtle.goto(____,____) turtle.down() for j in range(___): turtle.forward(_____) turtle.right(___)

Ответы

Ответ дал: Stephan2
0

import turtle

n = int(input("Введіть кількість квадратів: "))

side_length = 50  # довжина сторони першого квадрата

distance = 10    # відстань між сторонами квадратів

for i in range(1, n+1):

   # обчислюємо координати лівого верхнього кута i-го квадрата

   x = -distance * (i-1)

   y = distance * (i-1)

   # переміщуємо черепашку в точку (x, y) і починаємо малювати квадрат

   turtle.up()

   turtle.goto(x, y)

   turtle.down()

   # малюємо сторони квадрата

   for j in range(4):

       turtle.forward(side_length)

       turtle.right(90)

   # обчислюємо довжину сторони наступного квадрата

   side_length *= 1.5

# забезпечуємо, щоб вікно з графікою не закривалось після завершення програми

turtle.done()

Для обчислення координат лівого верхнього кута кожного наступного квадрата використовуються формули:

x = -distance * (i-1)

y = distance * (i-1)

А для обчислення довжини сторони наступного квадрата використовується формула:

side_length *= 1.5

Вас заинтересует