Определение возможных результатов работы простейших алгоритмов управления исполнителями и вычислительных алгоритмов · 51 задание
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
- Задание №6№6
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова напра…
Анализ алгоритмов и исполнители
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды: Вперёд n (где n – целое число), вызывающая передвижение Черепахи на n единиц в том направлении, куда указывает её голова, и Направо m (где m – целое число), вызывающая изменение направления движения на m градусов по часовой стрелке.
Запись Повтори k [Команда1 Команда2 … КомандаS] означает, что последовательность из S команд повторится k раз (k – целое число).
Черепахе был дан для исполнения следующий алгоритм:
Направо 45 Повтори 7 [Вперёд 7 Направо 45 Вперёд 20 Направо 135].
Определите, сколько точек с целочисленными координатами будут находиться внутри области, ограниченной линией, заданной данным алгоритмом. Точки на линии учитывать не следует.
Правильный ответ
76
Пояснение
Решение:
За один проход тела цикла Черепаха поворачивает на 45∘+135∘=180∘, поэтому замкнутая фигура получается за два прохода: у неё четыре стороны — 7, 20, 7, 20 — и углы 45∘ и 135∘. Это параллелограмм, а семь повторений просто обводят его несколько раз, ничего нового не рисуя.
Найдём вершины. Начальная команда «Направо 45» направляет голову под 45∘ к оси ординат, поэтому первый отрезок ведёт из (0;0) в точку (27; 27)≈(4,95; 4,95). Затем голова смотрит вправо, отрезок длины 20 даёт вершину (20+27; 27), после чего Черепаха спускается в (20;0) и возвращается в начало координат.
Итак, нижняя сторона лежит на оси абсцисс от (0;0) до (20;0), верхняя — на горизонтали y=27≈4,95, а боковые стороны идут под 45∘: левая по прямой y=x, правая по прямой y=x−20.
Точки на линиях не считаем, поэтому y может принимать только значения 1, 2, 3, 4. При фиксированном целом y координата x должна лежать строго между y и y+20, то есть принимать значения от y+1 до y+19 — ровно 19 вариантов. Всего 4⋅19=76 точек. Контроль: площадь параллелограмма равна 7⋅20⋅sin45∘≈99, что согласуется с ответом.
from math import sqrt
h = 7 / sqrt(2) # высота параллелограмма ≈ 4.95
total = 0
for y in range(1, int(h) + 1):
total += len([x for x in range(-30, 60) if y < x < y + 20])
print(total) # 76
Ответ: 76