Ограничения: время – 200ms/500ms, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Напишите в Blockly программу для робота-художника, который должен увеличить в два раза изображение в верхнем левом углу поля размером `8 xx 8` клеток.
![vertical-align: middle|Начало](48861.png) `->` ![vertical-align: middle|Начало](48860.png)
Изображение занимает клетки c (1,1) до (4,4).
Для написания программы управления роботом вы можете использовать следующие блоки, заданные в категории "Робот":
![Команды робота](48862.png)
Первые четыре команды позволяют роботу перемещаться в соответствующем направлении. Если выполнение команды движения невозможно, то она игнорируется.
Пятая команда позволяет переместить робота в клетку с указанными координатами.
Шестая команда позволяет перекрасить клетку, на котором находится робот, в указанный цвет.
Остальные команды позволяет узнать цвет текущей клетки и координаты текущей клетки.
Для создания переменной в категории "Переменные" нужно щелкнуть по кнопке "Создать переменную" и ввести её название, например, "цвет".
После этого в категории "Переменные" появятся блоки для получения и изменения значения переменной.
Например, чтобы скопировать цвет из клетки (1,1) в клетку (1,2), нужно выполнить программу:
![Программа](48857.png)
Нажимая на клетки поля можно задать изображение для увеличения.
В категориях "Логические" и "Циклы" можно найти блоки для ветвления и циклов, в категории "Математика" -- блоки для математических операций.
Для запуска программы используйте кнопки:
![Кнопки](48856.png)
Первая кнопка позволяет отправить ваше решение для проверки в проверяющую систему соревнований, вторая кнопка выполняет запуск программу локально, третья –
пошаговое выполнение или временная остановка программы, четвертая -- завершение выполнения программы, после которой программа будет выполняться сначала.
*Система оценки и описание подзадач*
||.u|Подзадача 1 (20 баллов)||
Необходимо увеличить изображение из одной клетки в верхнем левом углу, остальные клетки поля -- белые.
Увеличенное изображение дожно быть в клетках с (1,1) до (2,2).
![vertical-align: middle|Начало](48859.png) `->` ![vertical-align: middle|Начало](48858.png)
В этой подзадаче 2 тестов, каждый тест оценивается в 10 баллов. Баллы за каждый тест начисляются независимо.
||.u|Подзадача 2 (40 баллов)||
Необходимо увеличить изображение `2 xx 2` в клетках с (1,1) до (2,2), остальные клетки поля -- белые. Увеличенное изображение дожно быть в клетках с (1,1) до (4,4).
Необходимые подзадачи: 1.
В этой подзадаче 4 теста, каждый тест оценивается в 10 баллов. Баллы за каждый тест начисляются независимо.
||.u|Подзадача 3 (40 баллов)||
Необходимо увеличить изображение `4 xx 4`. Увеличенное изображение дожно быть в клетках с (1,1) до (8,8).
Необходимые подзадачи: 1, 2.
В этой подзадаче 4 теста, каждый тест оценивается в 10 баллов. Баллы за каждый тест начисляются независимо.
По запросу сообщается результат окончательной проверки на каждом тесте.
Обратите внимание, что решение подзадачи с большим номером является решением всех подзадач
с меньшими номерами, так как цвета белых клеток не меняются при перекрашивании в белый цвет.
---
Для написания программы для робота используется [специальная версия среды Blockly](blockly/2695.html).
Вы можете использовать полную среду Blockly при решении других задач этого соревнования, выбрав пункт Blockly
в информационном меню задачи.