6.01 Определение результатов работы простейших алгоритмов управления исполнителями
Ошибка.
Попробуйте повторить позже
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, ее голова направлена вдоль отрицательного направления оси ординат, хвост поднят. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует 6 команд: Поднять хвост, означающая переход к перемещению без рисования; Опустить хвост, означающая переход в режим рисования; Вперед n (где n – целое число), вызывающая передвижение Черепахи на n единиц в том направлении, куда указывает ее голова; Назад n (где n – целое число), вызывающая передвижение в противоположном голове направлении; Направо m (где m – целое число), вызывающая изменение направления движения на m градусов по часовой стрелке, Налево m (где m – целое число), вызывающая изменение направления движения на m градусов против часовой стрелки.
Запись Повтори k [Команда1 Команда2 … КомандаS] означает, что последовательность из S команд повторится k раз.
Черепахе был дан для исполнения следующий алгоритм:
Опустить хвост
Повтори 3 [Вперёд 4 Направо 60]
Повтори 3 [Налево 30 Вперёд 7 Направо 60 Вперёд 4 Направо 30 Вперёд 9 Налево 60]
Определите количество звеньев ломаной очерченной заданными алгоритмом. В ответе укажите только число.
Решение с помощью программы:
Напишем программу, используя библиотеку turtle для визуализации движения Черепахи по заданному алгоритму. Основная цель — построить фигуру по алгоритму, а затем проверить, какие точки с целочисленными координатами лежат внутри неё. Для этого сначала выполняется алгоритм Черепахи, который рисует границу области по заданному в условии алгоритму. После этого необходимо отрисовать точки с целочисленными координатами, чтобы проще было различить звенья. Для удобства визуализации применяется масштабирование (через переменную m), иначе фигура будет слишком маленькой. Все перемещения умножаются на m.
from turtle import * # Модуль для работы с исполнителем Черепаха m = 10 # Масштаб для увеличения видимости рисунка tracer(0) # Ускорение анимации pd() # Опускаем хвост # Начальная ориентация Черепахи right(90) screensize(1000, 1000) # Выставляем размер окна, чтобы иметь возможность скролла в случае, # если рисунок выйдет за грань. # Основной алгоритм Черепахи for i in range(3): # Повторить 3 раза forward(4 * m) # Вперёд на 4 * m right(60) # Направо 60 for i in range(3): # Повторить 3 раза left(30) # Налево 30 forward(7 * m) # Вперёд на 7 * m right(60) # Направо 60 forward(4 * m) # Вперёд на 4 * m right(30) # Направо 30 forward(9 * m) # Вперёд на 9 * m left(60) # Налево 60 pu() # Поднять хвост # Расставляем точки с целыми координатами for x in range(-25, 25): # Перебор абсцисс точек for y in range(-20, 40): # Перебор ординат точек goto(x * m, y * m) # Перемещение к точке (x, y) dot(3) # Ставим точку размером 3 done() # Завершение работы (окно остаётся открытым)
Решение в Кумире:
Посчитаем количество звеньев (без учета точки с черепашкой).
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!