использовать Черепаха | использование в КуМире исполнителя Черепаха
алг некоторое_количество_окружностей | авторское название программы
нач | начало программы
вещ R, d, shb, shm | определение переменных и их типов, все вещественные
R:=172 | начальный радиус основной окружности
d:=131 | начальный диаметр малой окружности
shb:=9 | начальная длина шага основной окружности
shm:=5.4 | начальная длина шага малой окружности
поднять хвост | перед началом рисования необходимо сместиться
назад(R) | смещение к месту начала рисунка
опустить хвост | инициация рисования линий на арене, Черепаха рисует кончиком хвоста
нц 3 раз | контур из окружностей повторяется трижды, новое повторение меньше предыдущего
вправо(90) | начинаем рисовать нижнюю сторону окружности слева направо
нц 120 раз | при 120-кратном повороте на 3 градуса получается окружность (360/3=120)
вперед(shb) | смещение на длину шага основной окружности
влево(3) | повторяющийся 120 раз поворот на 3 градуса
кц | конец цикла для построения основной окружности
вправо(24) | поворот перед началом рисования малых окружностей, величина подобрана случайно
нц 8 раз | требуется нарисовать 8 малых окружностей
вправо(45) | чтобы цепь из малых окружностей замкнулась, необходим поворот на 45 градусов (360/8=45)
нц 72 раз | при 72-кратном повороте на 5 градусов получается окружность (360/5=72)
вперед(shm) | смещение на длину шага малой окружности
влево(5) | повторяющийся 72 раза поворот на 5 градусов
кц | конец цикла для построения малой окружности
поднять хвост | перед началом рисования каждой малой окружности необходимо сместиться
влево(90) | возвращение к исходному положению относительно края основной окружности
вперед(d) | смещение к месту начала рисования новой малой окружности
опустить хвост | инициация рисования линий на арене, для новой малой окружности
кц | конец цикла для построения малых окружностей
влево(90+24) | возвращение к исходному положению относительно места начала рисунка
поднять хвост | необходимо, чтобы контуры из окружностей не соединялись
вперед(R) | смещение для начала нового контура
R:=R/2 | уменьшение длины радиуса основной окружности
d:=d/2 | уменьшение длины радиуса малой окружности
shb:=shb/2 | уменьшение длины шага основной окружности
shm:=shm/2 | уменьшение длины шага малой окружности
назад(R) | смещение к месту начала рисования нового контура
опустить хвост | инициация рисования линий на арене, для нового контура
кц | конец цикла для повторения контура
поднять хвост | конец рисунка
кон | конец программы
|
использовать Черепаха | использование в КуМире исполнителя Черепаха
алг вариация_на_тему_правильного_пятиугольника | авторское название программы
нач | начало программы
вещ t, x, y | определение переменных и их типов, все вещественные
t:=30 | начальная длина стороны правильного пятиугольника
x:=8 | начальное смещение нового контура относительно предыдущего по оси X
y:=24 | начальное смещение нового контура относительно предыдущего по оси Y
нц 3 раз | контур из пятиугольников повторяется трижды, новое повторение больше предыдущего
нц 10 раз | контур из пятиугольников полностью получается через 10 повторов
опустить хвост | инициация рисования линий на арене, Черепаха рисует кончиком хвоста
влево (90) | начинаем рисовать нижнюю сторону пятиугольника справа налево
нц 4 раз | прорисовываем только 4 стороны пятиугольника, без правой нижней
вперед (t) | на арене линия длиной t, сначала t равна 30
вправо (72) | 360 градусов / 5 = 72 градуса, это поворот для новой стороны
кц | конец цикла из четырёх сторон пятиугольника
вправо (72+72-90) | поворот для нового пятиугольника без одной из сторон
кц | конец цикла 10 пятиугольников, образующий контур
поднять хвост | необходимо, чтобы контуры из пятиугольников не соединялись
вправо (90) | поворот в сторону положительного направления оси абсцисс
вперед (x) | смещение для начала нового контура относительно предыдущего по оси X
вправо (90) | поворот в сторону отрицательного направления оси ординат
вперед (y) | смещение для начала нового контура относительно предыдущего по оси Y
влево (180) | поворот в сторону положительного направления оси ординат, как в начале
t:=t*2.4 | увеличение длины линий для нового, подобрано экспериментально
x:=x*2.4 | увеличение смещения нового контура относительно предыдущего по оси X
y:=y*2.4 | увеличение смещения нового контура относительно предыдущего по оси Y
кц | конец цикла для повторения контура
кон | конец программы
|