6. Определение результатов работы алгоритма: #291636
Исполнитель Цапля действует на плоскости с декартовой системой координат.
Цапле был дан для исполнения следующий алгоритм:
Направо 180 Вперёд 6 Направо 90 Вперёд 80 Направо 90 Вперёд 6 Повтори 5 [Дуга 8, 8, 0]
Определите, сколько точек с целочисленными координатами будут находиться внутри области, ограниченной линией, заданной данным алгоритмом. Точки на линии учитывать не следует.
В начальный момент Цапля находится в точке $(0;0)$ и направлена вверх.
После выполнения первых команд она перемещается следующим образом: $(0;0)\rightarrow(0;-6)\rightarrow(-80;-6)\rightarrow(-80;0)$.
Затем $5$ раз выполняется команда Дуга 8, 8, 0. Каждая команда строит верхнюю полуокружность радиуса $8$. Центры полуокружностей находятся в точках $(-72;0)$, $(-56;0)$, $(-40;0)$, $(-24;0)$, $(-8;0)$.
После выполнения последней команды Цапля возвращается в точку $(0;0)$, поэтому линия замыкается.
Сначала посчитаем точки ниже оси абсцисс. Координата $y$ может принимать значения $-5$, $-4$, $-3$, $-2$, $-1$.
При каждом таком значении координата $x$ принимает целые значения от $-79$ до $-1$. Количество значений $x$: $-1-(-79)+1=79$.
В нижней части области находится $5\cdot79=395$ точек.
Теперь посчитаем точки под одной полуокружностью радиуса $8$. Точки на дуге и концы полуокружности учитывать нельзя.
- при $y=0$ подходят $15$ значений $x$;
- при $y=1$ подходят $15$ значений $x$;
- при $y=2$ подходят $15$ значений $x$;
- при $y=3$ подходят $15$ значений $x$;
- при $y=4$ подходят $13$ значений $x$;
- при $y=5$ подходят $13$ значений $x$;
- при $y=6$ подходят $11$ значений $x$;
- при $y=7$ подходят $7$ значений $x$.
Под одной полуокружностью находится $15+15+15+15+13+13+11+7=104$ целочисленные точки.
Всего построено $5$ полуокружностей, поэтому в верхней части области находится $5\cdot104=520$ точек.
Общее количество точек внутри области: $395+520=915$.