Инструкция для педагога
Пять категорий — пять файлов
Симулятор читает задания из JSON при открытии страницы. В каждом файле находится вся категория: названия и условия заданий, количество полей и конфигурация каждого поля. Сейчас в первых четырёх файлах по 10 заданий, в ОГЭ — 20. Количество можно менять в конструкторе.
1. Подготовьте файл в конструкторе
- Откройте конструктор и выберите категорию. При первом открытии на сайте он загружает существующие задания. В дальнейшем открывает сохранённый черновик этого браузера.
- Чтобы редактировать актуальный файл с сайта, скачайте его по ссылке в таблице ниже и нажмите «Открыть JSON». Импорт заменяет черновик соответствующей категории.
- Выберите задание или добавьте новое. Заполните название и условие. Добавьте нужное количество полей: от 1 до 8.
- Для каждого поля задайте строки и столбцы (от 1 до 30), затем нажмите «Применить размер». Выберите инструмент и нажимайте клетки: Робот, закрасить, начальная закраска, стена по нужному краю. Повторное нажатие убирает стену или отметку. Внешняя граница поля всегда закрыта.
- Конечное положение Робота не влияет на выполнение задания. Начальный код необязателен и виден ученику сразу — не помещайте туда скрытый ответ.
- Нажмите «Скачать файл категории». Конструктор проверит данные и сохранит JSON с правильным именем. Одна программа ученика должна успешно пройти все поля задания.
2. Положите файл в нужное место
В исходном проекте «сайт метод мастерская» используются ровно пять мест:
| Категория | Файл в проекте | Текущий файл |
|---|---|---|
| 01 · Линейный алгоритм | public/kumir/tasks/linear.json | Скачать |
| 02 · Алгоритм с ветвлением | public/kumir/tasks/branch.json | Скачать |
| 03 · Цикл ПОКА | public/kumir/tasks/while.json | Скачать |
| 04 · Цикл РАЗ | public/kumir/tasks/repeat.json | Скачать |
| 05 · Задания ОГЭ | public/kumir/tasks/oge.json | Скачать |
Замените только файл нужной категории. Скачанный файл содержит всю категорию, поэтому перед созданием дополнений открывайте текущий JSON, чтобы сохранить остальные задания. Не меняйте имя файла и расширение .json. Если браузер добавил к имени «(1)», уберите эту часть.
3. Обновите сайт
Для этого проекта после замены файла выполните сборку npm run build и повторно опубликуйте сайт. На работающем сервере разработки достаточно обновить страницу. На обычном статическом хостинге JSON размещается по адресу /kumir/tasks/имя.json относительно корня сайта — папка public в адрес не входит.
Обновите симулятор: количество заданий изменится автоматически. Если файл отсутствует или содержит ошибку, симулятор покажет его имя и причину. Исправьте файл и обновите страницу. При изменении полей задания прежнее выполнение не засчитывается для новой конфигурации; данные прогресса остаются локальными для браузера и адреса сайта.
Отдельное приложение без установки
Конструктор уже находится в этом архиве. Распакуйте архив и откройте index.html. Для работы без сервера нажмите «Открыть JSON» и выберите один из пяти файлов в папке tasks либо свой файл с сайта. Загрузка соседних файлов напрямую браузером может быть запрещена при открытии с диска; ручной импорт и скачивание работают без сервера. Сам симулятор запускайте через сайт или локальный сервер.
Формат файла
Координаты в JSON начинаются с нуля и записываются как [строка, столбец]. В интерфейсе конструктора отсчёт начинается с единицы. Стена — пара соседних клеток; её направление не важно. Границы поля добавляются автоматически.
{
"version": 1,
"category": "linear",
"tasks": [{
"id": "linear-1",
"title": "Первый шаг",
"description": "Шагните вправо и закрасьте клетку.",
"starterCode": "",
"fieldCount": 1,
"fields": [{
"rows": 3,
"cols": 5,
"robot": [1, 1],
"walls": [[[0, 0], [0, 1]]],
"targets": [[1, 2]],
"painted": []
}]
}]
}
id — уникальное имя задания внутри категории; сохраняйте его при редактировании. fieldCount совпадает с длиной fields. targets — клетки, которые должны быть закрашены в конце; лишняя закраска не допускается, кроме клеток из painted, закрашенных изначально. Конечная позиция Робота не проверяется. Поле end в старых файлах игнорируется при проверке решения. В категории допустимо от 1 до 100 заданий. Конструктор проверяет формат, но достижимость цели нужно проверить запуском программы в симуляторе.