Задача к ЕГЭ по информатике на тему «Определение результатов работы простейших алгоритмов управления исполнителями» №3

Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды: Вперёд n  (где n  — целое число), вызывающая передвижение Черепахи на n  единиц в том направлении, куда указывает её голова, и Направо m  (где m  — целое число), вызывающая изменение направления движения на m  градусов по часовой стрелке.

Запись Повтори k  [Команда1  Команда2  …КомандаS  ] означает, что последовательность из S  команд повторится k  раз.

Черепахе был дан для исполнения следующий алгоритм:

Повтори 10  [Вперёд 10  Направо 60  ].

Определите, сколько точек с целочисленными координатами будут находиться внутри области, ограниченной линией, заданной данным алгоритмом. Точки на линии учитывать не следует.

cnt = 0
for x in range(-100, 100):
    for y in range(-100, 100):
        if (y < 1/3**0.5 * x + 10) and (y < 20 - 1/3**0.5 * x):
            if (x < 10 * 3**0.5) and (y > 1/3**0.5 * x - 10):
                if (y > -1/3**0.5 * x) and (x > 0):
                    cnt += 1
print(cnt)

Решение через модуль turtle в Python

from turtle import * # Модуль для работы с исполнителем Черепаха
m = 20 # Масштаб
tracer(0)
pd()
left(90)

# Алгоритм
for i in range(10):
    forward(10*m)
    right(60)

pu()
# Проставление точек
for x in range(-25, 25):
    for y in range(-20, 30):
        goto(x*m, y*m)
        dot(3)
done()

Вывод программы:

PIC

Необходимо посчитать количество точек внутри фигуры, их получилось 257.

Ответ: 257
Оцените статью
Я решу все!