Вопрос:

На бесконечном поле имеется стена из двух горизонтальных и одного вертикального участков. Робот должен закрасить клетки, примыкающие сверху к горизонтальным участкам стены. Составьте алгоритм для Робота в среде КуМир: 1) двигаться вверх до горизонтального участка стены; 2) двигаться влево под горизонтальным участком стены и сместиться на одну клетку левее стены; 3) занять положение над горизонтальным участком стены; 4) закрасить клетки слева направо над первым горизонтальным участком стены; 5) спуститься вниз вдоль вертикального участка стены; 6) закрасить клетки слева направо над вторым горизонтальным участком стены. Размеры участков стены произвольны.

Ответ:

Алгоритм использует циклы с проверкой положения Робота относительно стены. Сначала Робот поднимается к первому горизонтальному участку, затем обходит его слева направо, спускается вдоль вертикального участка и закрашивает клетки над вторым горизонтальным участком.

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

  нц пока слева свободно и сверху занято
    влево
  кц
  влево
  вверх

  закрасить
  нц пока справа свободно и снизу занято
    вправо
    закрасить
  кц

  нц пока справа занято и снизу свободно
    вниз
  кц

  нц пока слева свободно и сверху занято
    влево
  кц
  влево
  вверх

  закрасить
  нц пока справа свободно и снизу занято
    вправо
    закрасить
  кц
кон

Ответ: алгоритм приведён на языке КуМир.