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

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

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

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

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

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

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