1. Главная
  2. Библиотека
  3. Программирование
  4. Часть 2 11 Исполнитель Черепаха перемещается на экране...
Решение задачи на тему

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

  • Программирование
  • #Основы алгоритмизации и программирования
  • #Структуры и алгоритмы обработки данных
Часть 2 11 Исполнитель Черепаха перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды: вперед(n) (где n - целое число),

Условие:

Часть 2
11

Исполнитель Черепаха перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды:
вперед(n) (где n - целое число), вызываюшая передвижение Черепашки на n шагов в направлении движения; вправо(m) (где m - целое число), вызываюшая изменение направления движения на m градусов по часовой стрелке.
Запись повтори k [команда1 команда2 команда3] означает, что последовательность команд в скобках повторится k раз.
В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен.

Черепахе был дан для исполнения следующий алгоритм: повтори 7 [вперед(4) вправо (60)]

Постройте многоугольник в среде исполнителя «Черепаха» программы Кумир и посчитайте количество точек с целыми координатами, которые находятся внутри фигуры (точки на границе считать не нужно).

Ответ:

Решение:

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

  1. Анализ команд:
  • Начальная позиция Черепахи: (0, 0)
  • Начальное направление: вверх (положительное направление оси Y).
  1. Команды:
  • вперед(4): Черепаха движется на 4 еди...

  1. :
  • : Позиция (0, 4)
  • : Направление 60 градусов.
  1. :
  • : Позиция (2, 6.464) (используем синус и косинус для вычисления новых координат)
  • : Направление 120 градусов.
  1. :
  • : Позиция (-2, 8) (вычисляем новые координаты)
  • : Направление 180 градусов.
  1. :
  • : Позиция (-6, 4)
  • : Направление 240 градусов.
  1. :
  • : Позиция (-8, 0)
  • : Направление 300 градусов.
  1. :
  • : Позиция (-6, -4)
  • : Направление 0 градусов.
  1. :
  • : Позиция (-2, -8)
  • : Направление 60 градусов.

После выполнения всех команд, Черепаха вернется в начальную точку, и мы получим многоугольник с вершинами, которые мы вычислили на каждом шаге.

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

  1. .
  2. .

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

Таким образом, ответ на задачу: \boxed{12}.

Выбери предмет