← Все вопросы

кумир вспомогательный алгоритм — как не копировать одни и те же команды робота

Задан 29 месяцев назад454 просмотров2 ответа
5

У меня Робот должен нарисовать квадрат 2х2 в трёх разных местах поля. Я три раза копирую один и тот же кусок с закрашиванием, программа огромная и в ней легко запутаться. Учитель сказал «сделай вспомогательный алгоритм». А как его вообще создать в КуМире и потом вызвать?

2 ответа

11
✓ Принятый ответ — помог автору

Вспомогательный алгоритм — это твоя собственная команда. Описываешь один раз, вызываешь сколько хочешь. Пишется ПОСЛЕ основного кон, отдельным блоком алг имя / нач / кон.

использовать Робот
алг
нач
  квадрат
  вправо
  вправо
  вправо
  квадрат
кон

алг квадрат
нач
  закрасить
  вправо
  закрасить
  вниз
  закрасить
  влево
  закрасить
  вверх
кон

Как это читать: квадрат в основном алгоритме — это вызов. Когда Робот до него доходит, он выполняет все команды из блока алг квадрат, а потом возвращается и идёт дальше.

Плюсы: написал логику закраски один раз, поправил в одном месте — поменялось везде. И программу читать в сто раз легче.

Имя можно любое осмысленное: алг закрасить_столбик, алг шаг_вправо и т.п. Главное чтобы вызов совпадал с именем по буквам.

4

Маленькое дополнение: следи чтобы после вспомогательного алгоритма Робот оставался там, где удобно для следующего вызова.

У меня в примере квадрат заканчивается в той же клетке, откуда начал (вернулся вверх), поэтому его легко вызывать подряд. Если алгоритм «уезжает» — продумай возврат.

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект