Вопрос:

2. Черепахе был дан для исполнения следующий алгоритм: Повтори 2 [Вперёд 10 Направо 90 Вперёд 18 Направо 90] Поднять хвост Вперёд 5 Направо 90 Вперёд 7 Налево 90 Опустить хвост Повтори 2 [Вперёд 10 Направо 90 Вперёд 7 Направо 90]. Определите, сколько точек с целочисленными координатами будут находиться внутри объединения фигур, ограниченных заданными алгоритмом линиями, включая точки на линиях.

Ответ:

Решение:

1. Первый цикл: Повтори 2 [Вперёд 10 Направо 90 Вперёд 18 Направо 90]

  • Начало: (0,0), направление: вверх.
  • Итерация 1: Вперёд 10 → (0,10), Направо 90 → вправо. Вперёд 18 → (18,10), Направо 90 → вниз.
  • Итерация 2: Вперёд 10 → (18,0), Направо 90 → влево. Вперёд 18 → (0,0), Направо 90 → вверх.

Этот цикл рисует прямоугольник с вершинами (0,0), (0,10), (18,10), (18,0). Внутренние точки: 17 * 9 = 153.

2. Команды: Поднять хвост, Вперёд 5 Направо 90 Вперёд 7 Налево 90, Опустить хвост

  • Текущее положение: (0,0), направление: вверх.
  • Вперёд 5 → (0,5).
  • Направо 90 → вправо.
  • Вперёд 7 → (7,5).
  • Налево 90 → вверх.

Рисуется линия от (0,0) до (7,5) без учета хвоста. Если хвост поднят, эта линия не рисуется. Алгоритм предписывает сначала поднять хвост, потом выполнить эти команды, затем опустить хвост. Таким образом, этот отрезок не рисуется.

3. Второй цикл: Повтори 2 [Вперёд 10 Направо 90 Вперёд 7 Направо 90]

  • Текущее положение: (0,0), направление: вверх.
  • Итерация 1: Вперёд 10 → (0,10), Направо 90 → вправо. Вперёд 7 → (7,10), Направо 90 → вниз.
  • Итерация 2: Вперёд 10 → (7,0), Направо 90 → влево. Вперёд 7 → (0,0), Направо 90 → вверх.

Этот цикл рисует прямоугольник с вершинами (0,0), (0,10), (7,10), (7,0). Внутренние точки: 6 * 9 = 54.

Объединение фигур:

Первая фигура: прямоугольник [0, 18] x [0, 10].

Вторая фигура: прямоугольник [0, 7] x [0, 10].

Объединение этих двух прямоугольников дает больший прямоугольник [0, 18] x [0, 10].

Подсчет точек внутри объединения (включая границы):

  • Ширина: 18 - 0 + 1 = 19 точек.
  • Высота: 10 - 0 + 1 = 11 точек.
  • Общее количество точек: 19 * 11 = 209.

Ответ: 209

Похожие