Урок 7. Узоры и орнаменты

На этом уроке мы научимся создавать красивые узоры из повторяющихся фигур. Будем использовать циклы, повороты, цвет и толщину линии.

Главная идея урока

Орнамент получается тогда, когда один и тот же элемент повторяется несколько раз. В программировании это удобно делать с помощью цикла.

Например, можно нарисовать квадрат, немного повернуть Черепашку, снова нарисовать квадрат, снова повернуть — и получить красивый круговой узор.

Что сегодня повторяем?

Цикл
for i in range(12): — повторить команды 12 раз.
Поворот
t.left(30) — повернуть Черепашку налево на 30 градусов.
Настройка линии
t.color("blue"), t.pensize(4), t.speed(0).

Важно понять

Чтобы узор получился круговым, нужно думать о полном обороте. Полный оборот — это 360 градусов.

Если мы хотим повторить элемент 12 раз, то после каждого элемента можно повернуть Черепашку на:

360 / 12 = 30

Поэтому для узора из 12 элементов часто используется поворот на 30 градусов.

Пример 1. Лучи по кругу

Начнём с простого узора: Черепашка рисует линию, возвращается назад и немного поворачивает.

import turtle

t = turtle.Turtle()

t.speed(0)
t.pensize(4)
t.color("blue")

for i in range(12):
    t.forward(120)
    t.backward(120)
    t.left(30)

turtle.done()

Получается узор из 12 лучей. После каждого луча Черепашка поворачивает на 30 градусов.

Задание 1. Больше лучей

Измени программу так, чтобы получилось 18 лучей.

Условия:

  1. количество повторений — 18;
  2. длина каждого луча — 100 шагов;
  3. цвет линии — фиолетовый;
  4. толщина линии — 3;
  5. поворот после каждого луча — 20 градусов.

Подсказка: 360 / 18 = 20.

Новая идея: цикл внутри цикла

Иногда нужно повторять не одну команду, а целую фигуру. Например, чтобы сделать узор из квадратов, нужно много раз рисовать квадрат.

Для этого можно использовать цикл внутри другого цикла.

for i in range(12):
    for j in range(4):
        t.forward(80)
        t.left(90)
    t.left(30)

Внутренний цикл рисует квадрат, а внешний цикл повторяет этот квадрат 12 раз.

Пример 2. Цветок из квадратов

Нарисуем квадрат, повернём Черепашку, снова нарисуем квадрат — и так 12 раз.

import turtle

t = turtle.Turtle()

t.speed(0)
t.pensize(3)
t.color("green")

for i in range(12):
    for j in range(4):
        t.forward(80)
        t.left(90)
    t.left(30)

turtle.done()

В этом рисунке квадрат повторяется 12 раз, а каждый раз Черепашка поворачивает на 30 градусов.

Задание 2. Цветок из 18 квадратов

Измени программу так, чтобы узор состоял из 18 квадратов.

Условия:

  1. внешний цикл должен повторяться 18 раз;
  2. внутренний цикл должен рисовать квадрат;
  3. сторона квадрата — 70 шагов;
  4. поворот после каждого квадрата — 20 градусов;
  5. цвет линии — синий.

Подсказка: если элементов 18, то 360 / 18 = 20.

Пример 3. Узор из треугольников

Точно так же можно повторять не квадрат, а треугольник.

import turtle

t = turtle.Turtle()

t.speed(0)
t.pensize(3)
t.color("orange")

for i in range(10):
    for j in range(3):
        t.forward(100)
        t.left(120)
    t.left(36)

turtle.done()

Здесь Черепашка рисует 10 треугольников. После каждого треугольника она поворачивает на 36 градусов.

Задание 3. Свой узор из треугольников

Создай узор из 12 равносторонних треугольников.

Условия:

  1. внешний цикл повторяется 12 раз;
  2. внутренний цикл рисует треугольник;
  3. сторона треугольника — 90 шагов;
  4. поворот после каждого треугольника — 30 градусов;
  5. цвет линии — красный;
  6. толщина линии — 4.

Как менять вид узора?

Один и тот же код может давать очень разные рисунки. Достаточно менять несколько чисел.

Что можно менять?
Количество повторений: range(12), range(18), range(36)
Длину стороны: t.forward(80), t.forward(120)
Угол поворота: t.left(30), t.left(20), t.left(10)
Цвет и толщину линии: t.color("purple"), t.pensize(5)

Маленькое изменение числа может сильно изменить рисунок.

Пример 4. Геометрическая розетка

Теперь сделаем узор из длинных линий. Черепашка будет рисовать линию, поворачивать и снова рисовать линию.

import turtle

t = turtle.Turtle()

t.speed(0)
t.pensize(2)
t.color("purple")

for i in range(36):
    t.forward(160)
    t.backward(160)
    t.left(10)

turtle.done()

Получилась розетка из 36 лучей. После каждого луча Черепашка поворачивает на 10 градусов.

Задание 4. Своя розетка

Создай свою геометрическую розетку.

Условия:

  1. используй цикл for;
  2. количество лучей — 24;
  3. длина луча — 130 шагов;
  4. после каждого луча поворот — 15 градусов;
  5. цвет и толщину линии выбери самостоятельно.

Подсказка: 360 / 24 = 15.

Пример 5. Цветной орнамент

Можно менять цвет прямо внутри цикла. Пока сделаем простой вариант: несколько лучей одного цвета, потом несколько лучей другого цвета.

import turtle

t = turtle.Turtle()

t.speed(0)
t.pensize(4)

for i in range(12):
    t.color("red")
    t.forward(100)
    t.backward(100)
    t.left(15)

    t.color("blue")
    t.forward(100)
    t.backward(100)
    t.left(15)

turtle.done()

Внутри одного повторения Черепашка рисует красный луч, потом синий луч.

Задание 5. Двухцветный орнамент

Создай двухцветный орнамент из лучей.

Условия:

  1. используй два разных цвета;
  2. длина каждого луча — 120 шагов;
  3. толщина линии — 4;
  4. узор должен сделать полный оборот;
  5. количество лучей и угол поворота подбери самостоятельно.

Типичные ошибки

  • Забыли двоеточие после строки for i in range(...):.
  • Не сделали отступы внутри цикла.
  • Вложенный цикл написали без дополнительного отступа.
  • Для узора из 12 элементов поставили поворот не 30 градусов, и рисунок не замкнулся.
  • Слишком большая длина линии вывела часть рисунка за пределы окна.
  • Забыли команду t.speed(0), и большой узор рисуется очень долго.

Творческое задание

Создай свой орнамент или геометрическую эмблему.

Можно нарисовать:

  • цветок из квадратов;
  • розетку из лучей;
  • узор из треугольников;
  • эмблему класса;
  • абстрактный геометрический знак.

Условия:

  • используй хотя бы один цикл for;
  • используй цвет и толщину линии;
  • в рисунке должно быть не меньше 10 повторяющихся элементов;
  • узор должен отличаться от примеров урока;
  • подбери такие числа, чтобы рисунок выглядел аккуратно.

Проверь себя

  1. Что такое орнамент?
  2. Почему циклы удобно использовать для узоров?
  3. Сколько градусов в полном обороте?
  4. Какой поворот нужен для узора из 12 элементов?
  5. Что делает внутренний цикл в узоре из квадратов?
  6. Что делает внешний цикл в узоре из квадратов?
  7. Зачем в больших узорах использовать t.speed(0)?

Итог урока

Сегодня мы научились создавать узоры и орнаменты с помощью циклов. Мы увидели, что одна простая фигура может превратиться в красивый рисунок, если повторять её с поворотом.

На следующем уроке нас ждёт мини-проект: мы соберём все изученные команды и создадим свой первый полноценный рисунок кодом.

Последнее изменение: понедельник, 27 апреля 2026, 23:16