Продолжим знакомство с сервисами, которые могут помочь учителю организовать обучение учащихся программированию более интересно и нестандартно за счет использования игровых технологий.

Сегодняшним нашим героем будет

Сервис RoboZZle

Режим доступа: robozzle.com/beta/

Идея игры очень проста: на игровом поле, состоящем из разноцветных квадратов, имеется исполнитель Робот в виде стрелки. На некоторых квадратах находятся звезды, которые должен собрать робот с помощью программного кода.

Система команд исполнителя состоит из таких блоков:

Команда Описание
Движение вперед на один шаг.
Поворот налево/направо.
Вызов функции. Количество функций может изменяться в зависимости от задачи.
Проверка условия “Если исполнитель находится на ячейке определенного цвета”.
Перекрасить текущую клетку в выбранный цвет.

Для решения конкретной задачи необходимо составить алгоритм, выстраивая команды в определенном порядке в главной программе – функции F1.

Ниже приведен пример одной из возможных задач и алгоритм ее решения:

Очень часто в главной функции может не хватать места командам. В этом случае предлагается провести декомпозицию основной задачи на подзадачи. Для этого используются вспомогательные функции.

Ниже представлен пример одной из таких задач и алгоритм ее решения:

Кроме того, на сервисе представлен ряд задач, для решения которых необходимо использовать рекурсию.

Ниже приведен пример одной из возможных задач и алгоритм ее решения:

Всего на сервисе RoboZZle представлено больше 1200 учебных задач разного уровня сложности.

Но, к сожалению, все задачи буквально “разбросаны на сервисе”, некоторые из них повторяются, а еще некоторые не совсем интересны.

Предлагаем вашему вниманию блок задач, которые, по нашему мнению, можно использовать для знакомства учащихся с сервисом RoboZZle.

Задания были выбраны таким образом, чтобы ознакомление соответствовало принципам постепенности и наглядности, а также мотивировать учащихся для дальнейшей работы с этим сервисом. Они позволят учащимся наглядно и понятно познакомиться с такими важными понятиями программирования, как: исполнитель, система команд исполнителя, последовательный алгоритм, функция, рекурсия и др.

В следующей части нашего обзора продолжим знакомство с сервисом RoboZZle и рассмотрим ряд других интересных задач (УРОВЕНЬ 2), которые логически позволят учащимся сделать дальнейшие шаги в этом направлении.