Исполнитель Черепаха
Черепаха — графический исполнитель для создания рисунков с помощью команд перемещения. Черепаха «ходит» по полю и оставляет след — линию. Для использования укажите первой строкой в программе:
использовать Черепаха
Основы
Черепаха находится на плоскости и имеет:
- Позицию (x, y) — координаты на плоскости
- Направление — угол в градусах (0° — вправо, 90° — вверх)
- Перо — опущено (рисует) или поднято (не рисует)
Команды
Перемещение
| Команда | Описание |
|---|---|
вперед(n) |
Двигаться вперёд на n шагов |
назад(n) |
Двигаться назад на n шагов |
вправо(угол) |
Повернуть вправо на угол градусов |
влево(угол) |
Повернуть влево на угол градусов |
Управление пером
| Команда | Описание |
|---|---|
опустить хвост |
черепаха рисует |
поднять хвост |
черепаха не рисует |
Примеры
Квадрат
использовать Черепаха
алг
нач
опустить хвост
цел i
нц для i от 1 до 4
вперед(100)
вправо(90)
кц
кон
Треугольник
использовать Черепаха
алг
нач
опустить хвост
цел i
нц для i от 1 до 3
вперед(100)
вправо(120)
кц
кон
Звезда
использовать Черепаха
алг
нач
опустить хвост
цел i
нц для i от 1 до 5
вперед(100)
вправо(144)
кц
кон
Окружность (приближённо)
использовать Черепаха
алг
нач
опустить хвост
цел i
нц для i от 1 до 360
вперед(2)
вправо(1)
кц
кон
Спираль
использовать Черепаха
алг
нач
вещ длина
опустить хвост
длина := 5
цел i
нц для i от 1 до 50
вперед(длина)
вправо(90)
длина := длина + 5
кц
кон
Еще пример
использовать Черепаха
алг
нач
цел i
| квадрат
нц для i от 1 до 4
вперед(50)
вправо(90)
кц
| Перемещаемся без рисования
поднять хвост
вперед(100)
опустить хвост
| квадрат
цел i
нц для i от 1 до 4
вперед(50)
вправо(90)
кц
кон
Фракталы
Снежинка Коха
использовать Черепаха
алг
нач
опустить хвост
цел i
нц для i от 1 до 3
кох(200, 4)
вправо(120)
кц
кон
алг кох(вещ длина, цел глубина)
нач
если глубина = 0
то
вперед(длина)
иначе
кох(длина / 3, глубина - 1)
влево(60)
кох(длина / 3, глубина - 1)
вправо(120)
кох(длина / 3, глубина - 1)
влево(60)
кох(длина / 3, глубина - 1)
все
кон
Дерево
использовать Черепаха
алг
нач
опустить хвост
влево(90)
дерево(100, 5)
кон
алг дерево(вещ длина, цел глубина)
нач
если глубина > 0
то
вперед(длина)
влево(30)
дерево(длина * 0.7, глубина - 1)
вправо(60)
дерево(длина * 0.7, глубина - 1)
влево(30)
назад(длина)
все
кон
Треугольник Серпинского
использовать Черепаха
алг
нач
опустить хвост
серпинский(200, 5)
кон
алг серпинский(вещ размер, цел глубина)
нач
если глубина = 0
то
цел i
нц для i от 1 до 3
вперед(размер)
влево(120)
кц
иначе
серпинский(размер / 2, глубина - 1)
вперед(размер / 2)
серпинский(размер / 2, глубина - 1)
назад(размер / 2)
влево(60)
вперед(размер / 2)
вправо(60)
серпинский(размер / 2, глубина - 1)
влево(60)
назад(размер / 2)
вправо(60)
все
кон
Использование в онлайн-песочнице
- Откройте qumir.dev
- Напишите программу с командами черепахи
- Нажмите Run
- Переключите вывод на Черепаха (появится автоматически)
Система координат
- Начало координат (0, 0) — в центре поля
- Ось X направлена вправо
- Ось Y направлена вверх
- Углы отсчитываются от направления вправо против часовой стрелки