Задание 6 ЕГЭ по информатике: исполнитель Черепаха и точки внутри фигуры
Задание 6 ЕГЭ по информатике даёт программу для исполнителя Черепаха, который рисует на плоскости одну или две фигуры. Нужно посчитать точки с целыми координатами внутри фигуры или в пересечении фигур: удобно выполнить программу на клетчатой бумаге и записать координаты вершин.
- Что проверяет: Определение возможных результатов работы простейших алгоритмов управления исполнителями и вычислительных алгоритмов. Базовый уровень сложности.
- Баллы: 1 первичный балл
- Формат ответа: Целое число — количество точек.
- Программа: задание решают без программы, ответ можно проверить на Python
- Уровень сложности: базовый
- Время: около 4 минут по спецификации
- Кодификатор: 3.3 — результаты работы простейших алгоритмов управления исполнителями; Требование 2.9 — определять без компьютера результаты выполнения несложных программ с циклами
Как решать
Черепаха начинает в начале координат, её голова направлена вверх, вдоль оси ординат, хвост опущен. Вперёд n и Назад n перемещают её на n единиц, Направо m и Налево m поворачивают на m градусов по часовой стрелке или против неё. Поднять хвост и Опустить хвост выключают и включают рисование, Повтори k [...] повторяет команды в скобках k раз.
Шаг 1. Выполните программу на клетчатой бумаге и запишите координаты вершин каждой фигуры. Следите за положением и направлением Черепахи после цикла: если повторов больше, чем нужно для замкнутой фигуры, лишние повторы проходят по уже нарисованным сторонам, но Черепаха заканчивает цикл в другой точке.
Шаг 2. Определите, что спрашивают: точки строго внутри, внутри вместе с границей, в пересечении или в объединении фигур.
Шаг 3. Для прямоугольника со сторонами a и b вдоль осей строго внутри лежат (a − 1) · (b − 1) точек, вместе с границей — (a + 1) · (b + 1). Пересечение двух таких прямоугольников — тоже прямоугольник: его левая граница — бо́льшая из левых границ, правая — меньшая из правых, по оси y так же.
Для фигур с наклонными сторонами формулы не хватает. Тогда на экзамене рисуют траекторию модулем turtle в Python в увеличенном масштабе и считают точки сетки внутри. Программы в примерах вычисляют вершины фигур и считают точки напрямую.
Примеры с решением
Пример 1
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент она находится в начале координат, голова направлена вдоль положительного направления оси ординат, хвост опущен. Черепаха выполнила программу:
Повтори 2 [Вперёд 14 Направо 90 Вперёд 9 Направо 90]
Определите, сколько точек с целочисленными координатами находится внутри области, ограниченной нарисованной линией. Точки на линии не учитывайте.
Проверка ответа на Python
# Черепаха: начало координат, голова смотрит вдоль оси Oy
x, y, dx, dy = 0, 0, 0, 1
points = [(x, y)]
def forward(n):
global x, y
x, y = x + dx * n, y + dy * n
points.append((x, y))
def right(): # поворот на 90° по часовой стрелке
global dx, dy
dx, dy = dy, -dx
for _ in range(2): # Повтори 2 [Вперёд 14 Направо 90 Вперёд 9 Направо 90]
forward(14)
right()
forward(9)
right()
# Линия — прямоугольник; внутренние точки лежат строго между его сторонами
x1, x2 = min(p[0] for p in points), max(p[0] for p in points)
y1, y2 = min(p[1] for p in points), max(p[1] for p in points)
inside = sum(1 for i in range(x1 + 1, x2) for j in range(y1 + 1, y2))
print(inside)Ответ: 104
Черепаха поднимается на 14 единиц, поворачивает направо и проходит 9 единиц вдоль оси x, затем возвращается. Получается прямоугольник с вершинами (0, 0), (0, 14), (9, 14) и (9, 0).
Строго внутри лежат точки с x от 1 до 8 (8 значений) и y от 1 до 13 (13 значений): 8 · 13 = 104.
Пример 2
Черепаха начинает в начале координат, голова направлена вдоль положительного направления оси ординат, хвост опущен. Она выполнила программу:
Повтори 3 [Вперёд 20 Направо 90 Вперёд 16 Направо 90]
Поднять хвост
Вперёд 5 Направо 90 Вперёд 7 Налево 90
Опустить хвост
Повтори 2 [Вперёд 30 Направо 90 Вперёд 12 Направо 90]
Определите, сколько точек с целочисленными координатами находится в области пересечения фигур, ограниченных нарисованными линиями, включая точки на границах пересечения.
Проверка ответа на Python
# Черепаха: начало координат, голова смотрит вдоль оси Oy
x, y, dx, dy = 0, 0, 0, 1
figures = [[(x, y)]] # точки каждой фигуры, нарисованной с опущенным хвостом
pen_down = True
def forward(n):
global x, y
x, y = x + dx * n, y + dy * n
if pen_down:
figures[-1].append((x, y))
def right():
global dx, dy
dx, dy = dy, -dx
def left():
global dx, dy
dx, dy = -dy, dx
for _ in range(3): # Повтори 3 [Вперёд 20 Направо 90 Вперёд 16 Направо 90]
forward(20)
right()
forward(16)
right()
pen_down = False # Поднять хвост
forward(5)
right()
forward(7)
left()
pen_down = True # Опустить хвост
figures.append([(x, y)])
for _ in range(2): # Повтори 2 [Вперёд 30 Направо 90 Вперёд 12 Направо 90]
forward(30)
right()
forward(12)
right()
# Обе линии — прямоугольники; пересечение прямоугольников — тоже прямоугольник
boxes = [(min(p[0] for p in f), max(p[0] for p in f), min(p[1] for p in f), max(p[1] for p in f)) for f in figures]
x1, x2 = max(b[0] for b in boxes), min(b[1] for b in boxes)
y1, y2 = max(b[2] for b in boxes), min(b[3] for b in boxes)
print((x2 - x1 + 1) * (y2 - y1 + 1)) # точки на границе пересечения тоже считаютсяОтвет: 160
Первый цикл рисует прямоугольник 0 ≤ x ≤ 16, 0 ≤ y ≤ 20. Двух повторов достаточно, чтобы его замкнуть. Третий повтор идёт по тем же сторонам и заканчивается в точке (16, 20), голова смотрит вниз.
Без рисования Черепаха проходит 5 единиц вниз до (16, 15), поворачивает направо (теперь смотрит влево), проходит 7 единиц до (9, 15) и поворачивает налево, снова вниз. Второй цикл рисует прямоугольник −3 ≤ x ≤ 9, −15 ≤ y ≤ 15.
Пересечение: 0 ≤ x ≤ 9 (10 значений) и 0 ≤ y ≤ 15 (16 значений), всего 10 · 16 = 160 точек.
Типичные ошибки
- Считают, что после лишних повторов Черепаха возвращается в начало. При нечётном числе проходов по двум сторонам прямоугольника она останавливается в противоположной вершине.
- Путают направление поворота: Направо — по часовой стрелке. Если голова смотрит вверх, после Направо 90 Черепаха смотрит вправо.
- Считают точки внутри, когда спрашивают с границей, или наоборот. Для прямоугольника это разница между (a − 1) · (b − 1) и (a + 1) · (b + 1).
- Забывают, что при поднятом хвосте Черепаха перемещается, но линию не рисует.
Потренироваться на тренажёре
Частые вопросы
Можно ли в задании 6 использовать модуль turtle?
Да, на экзаменационном компьютере есть среды программирования, и модуль turtle входит в стандартную поставку Python. Его используют, чтобы нарисовать фигуру в масштабе и посчитать точки сетки на экране.
Как посчитать точки внутри прямоугольника?
Если стороны идут вдоль осей и имеют длины a и b, строго внутри лежат (a − 1) · (b − 1) точек с целыми координатами, а вместе с границей (a + 1) · (b + 1).
Сколько баллов и минут приходится на задание 6?
Задание оценивается 1 первичным баллом, в спецификации 2027 года на него отведено около 4 минут.
Официальные материалы
- Демоверсия, спецификация и кодификатор ЕГЭ 2027 по информатике (архив, проект)
- Демоверсии, спецификации и кодификаторы ЕГЭ по всем предметам
- Открытый банк заданий ЕГЭ
Другие задания
Все задания и структура экзамена — на странице ЕГЭ по информатике. Соседние разборы: задание 5 и задание 7.
Описание задания сверено 28 сентября 2026 года со спецификацией 2027 года (документы 2027 года). Примеры составлены нами по структуре демоверсии, каждое решение запущено, и напечатанный им ответ совпадает с ответом на странице. Кодолимп не связан с разработчиками экзамена. Заметили неточность — напишите нам.