Примеры алгоритмических конструкций при работе с Роботом в программе «КуМир»
Задача: закрасить 3 клетки по прямой линии.
использовать Робот
алг ПрямаяЛиния
нач
закрасить
вправо
закрасить
вправо
закрасить
кон
Пояснение: команды выполняются строго последовательно — Робот закрашивает текущую клетку, двигается вправо, снова закрашивает и т. д.
Задача: если справа свободно, то двигаться вправо и закрасить клетку, иначе просто закрасить текущую клетку.
использовать Робот
алг УсловноеДвижение
нач
если справа свободно
то вправо
закрасить
иначе закрасить
все
кон
Пояснение: конструкция если... то... иначе... все позволяет Роботу принимать решения в зависимости от обстановки.
Задача: нарисовать горизонтальную линию из 5 закрашенных клеток.
использовать Робот
алг ЛинияИзПятиКлеток
нач
нц 5 раз
закрасить
вправо
кц
кон
Пояснение: цикл нц ... раз ... кц повторяет действия заданное число раз. Робот 5 раз закрашивает клетку и двигается вправо.
Задача: двигаться вправо, пока справа свободно, закрашивая каждую клетку.
использовать Робот
алг ДвижениеДоСтены
нач
нц пока справа свободно
закрасить
вправо
кц
закрасить // закрашиваем последнюю клетку
кон
Пояснение: цикл нц пока ... кц выполняется, пока условие истинно. Робот останавливается, когда справа оказывается стена.
Задача: двигаться вниз, пока снизу есть свободное пространство, но сделать минимум один шаг.
использовать Робот
алг МинимумОдинШаг
нач
нц
вниз
закрасить
кц_при не снизу свободно
кон
Пояснение: конструкция нц ... кц_при гарантирует выполнение тела цикла хотя бы один раз, затем проверяет условие выхода.
Задача: создать квадрат 3×3 из закрашенных клеток.
использовать Робот
алг Квадрат3x3
нач
цел i, j
нц для i от 1 до 3
нц для j от 1 до 3
закрасить
вправо
кц
вниз
влево
влево
влево // возвращаемся в начало строки
кц
кон
Пояснение: внутренний цикл рисует одну строку, внешний — повторяет это 3 раза, перемещая Робота на следующую строку.
Задача: двигаться вправо до стены, обходя препятствия (если снизу свободно — спускаться, если сверху — подниматься).
использовать Робот
алг ОбходПрепятствий
нач
нц пока справа свободно
если снизу свободно
то вниз
иначе если сверху свободно
то вверх
все
вправо
закрасить
кц
кон
Пояснение: внутри цикла проверяется несколько условий, что позволяет Роботу адаптироваться к обстановке.
Задача: двигаться вправо, только если справа свободно и клетка не закрашена.
использовать Робот
алг БезопасноеДвижение
нач
нц пока справа свободно и не клетка закрашена
вправо
закрасить
кц
кон
Пояснение: условие содержит логическую операцию и, что позволяет проверять сразу два критерия.
Краткие выводы
Ключевые особенности работы с алгоритмическими конструкциями в «КуМире»:
- Линейные алгоритмы подходят для простых задач с фиксированным набором действий.
- Ветвления (
если... то... иначе... все) позволяют учитывать разные сценарии. - Циклы с параметром (
нц N раз ... кц) удобны, когда известно число повторений. - Циклы с условием (
нц пока ... кц,нц ... кц_при) адаптируются к обстановке. - Вложенные циклы решают задачи с двумерной структурой (например, рисование фигур).
- Логические операции (
и,или,не) расширяют возможности проверки условий.
Практическая работа
https://axelofan.github.io/kumir/
Задача №1
Необходимо перевести Робота по лабиринту из начального положения (◊) в точку A.

Необходимо провести Робота по лабиринту из начального положения (◊) в точку A.
(условия: должен быть написан один цикл!)

Необходимо провести Робота вдоль коридора из начального положения (◊) до точки A, заглядывая в каждый боковой коридор.

Задача №4
Использование циклов при создании орнаментов
Составьте программу рисования узора. Начальное положение Робота отмечено символом ◊.

Вложенные циклы (цикл в цикле)
Необходимо провести Робота по лабиринту из начального положения (◊) в точку A.

Составьте программу рисования узора. Начальное положение Робота отмечено символом ◊.

Задача№7
Необходимо провести Робота по коридору из начального положения (◊) в точку A.

Составьте программу рисования узора. Начальное положение Робота отмечено символом ◊.

Задача №9
(Условия: используйте «Если»)
Необходимо провести Робота по коридору шириной в одну клетку из начального положения (◊) до конца коридора, закрашивая при этом все клетки коридора, которые имеют выход. Выходы размером в одну клетку располагаются произвольно по всей длине коридора. Коридор заканчивается тупиком. Коридор имеет два горизонтальных и диагональный участки в форме
. Пример коридора показан на рисунке.
