<?xml version="1.0" encoding="UTF-8"?>
<module name="Робот">
  Стандартный исполнитель, описанный в учебнике А.Г.Кушниренко "Основы информатики и
  вычислительной техники".
  <alg name="@@закрашена>
    <description>
      Возвращает <arg>да</arg> если в клетка <arg id="1">строка</arg>,<arg id="2">столбец</arg> закрашена, иначе возвращает <arg>нет</arg>.
    </description>
  </alg>
  <alg name="@@верхняя буква">
    <description>
      Возвращает верхнюю букву в клетке <arg id="1">строка</arg>,<arg id="2">столбец</arg>
    </description>
  </alg>
  <alg name="@@метка>
    <description>
      Возвращает <arg>да</arg> если в клетка <arg id="1">строка</arg>,<arg id="2">столбец</arg> отмечена, иначе возвращает <arg>нет</arg>.
    </description>
  </alg>
  <alg name="@@нижняя буква">
    <description>
      Возвращает верхнюю букву в клетке <arg id="1">строка</arg>,<arg id="2">столбец</arg>
    </description>
  </alg>
  <alg name="@@радиация">
    <description>
      Возвращает радаицию в клетке <arg id="1">строка</arg>,<arg id="2">столбец</arg>
    </description>
  </alg>
  <alg name="@@температура">
    <description>
      Возвращает температура в клетке <arg id="1">строка</arg>,<arg id="2">столбец</arg>
    </description>
  </alg>
  <alg name="@@робот">
    <description>
      Записывает в<arg id="1">строка</arg>,<arg id="2">столбц</arg> положение робота.
    </description>
  </alg>
  <alg name="@@размер поля">
    <description>
      Записывает в<arg id="1">строк</arg>,<arg id="2">столбцов</arg> размер поля.
    </description>
  </alg>
  <alg name="вверх">
    <description>
      Перемещает робота на одну клетку вверх. Если сверху от робота
      находится стена, то КуМир аварийно останавливает выполнение программы.
    </description>
  </alg>
  <alg name="вниз">
    <description>
      Перемещает робота на одну клетку вниз. Если снизу от робота
      находится стена, то КуМир аварийно останавливает выполнение программы.
    </description>
  </alg>
  <alg name="влево">
    <description>
      Перемещает робота на одну клетку влево. Если слева от робота
      находится стена, то КуМир аварийно останавливает выполнение программы.
    </description>
  </alg>
  <alg name="вправо">
    <description>
      Перемещает робота на одну клетку вправо. Если справа от робота
      находится стена, то КуМир аварийно останавливает выполнение программы.
    </description>
  </alg>
  <alg name="сверху стена">
    <description>
      Возвращает <arg>да</arg>, если сверху от робота находится стена.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока не сверху стена
      . . вверх
      . кц
      кон
    </example>
  </alg>
  <alg name="снизу стена">
    <description>
      Возвращает <arg>да</arg>, если снизу от робота находится стена.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока не снизу стена
      . . вниз
      . кц
      кон
    </example>
  </alg>
  <alg name="справа стена">
    <description>
      Возвращает <arg>да</arg>, если справа от робота находится стена.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока не справа стена
      . . вправо
      . кц
      кон
    </example>
  </alg>
  <alg name="слева стена">
    <description>
      Возвращает <arg>да</arg>, если слева от робота находится стена.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока не слева стена
      . . влево
      . кц
      кон
    </example>
  </alg>
  <alg name="сверху свободно">
    <description>
      Возвращает <arg>да</arg>, если сверху от робота нет стены.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока сверху свободно
      . . вверх
      . кц
      кон
    </example>
  </alg>
  <alg name="снизу свободно">
    <description>
      Возвращает <arg>да</arg>, если снизу от робота нет стены.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока снизу свободно
      . . вниз
      . кц
      кон
    </example>
  </alg>
  <alg name="справа свободно">
    <description>
      Возвращает <arg>да</arg>, если справа от робота нет стены.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока справа свободно
      . . вправо
      . кц
      кон
    </example>
  </alg>
  <alg name="слева свободно">
    <description>
      Возвращает <arg>да</arg>, если слева от робота нет стены.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . нц пока слева свободно
      . . влево
      . кц
      кон
    </example>
  </alg>
  <alg name="закрасить">
    <description>
      Закрашивает клетку, на которой стоит робот.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . если клетка чистая
      . то
      . . закрасить
      . все
      кон
    </example>
  </alg>
  <alg name="клетка чистая">
    <description>
      Возвращает <arg>да</arg>, если клетка, на которой стоит робот, не закрашена.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . если клетка чистая
      . то
      . . закрасить
      . все
      кон
    </example>
  </alg>
  <alg name="клетка закрашена">
    <description>
      Возвращает <arg>да</arg>, если клетка, на которой стоит робот, закрашена.
    </description>
    <example>
      использовать Робот
      алг
      нач
      . если не клетка закрашена
      . то
      . . закрасить
      . все
      кон
    </example>
  </alg>
  <alg name="температура">
    <description>
      Возвращает температуру в клетке, на которой стоит робот.
    </description>
    <example>
      использовать Робот
      алг 
      нач
      . вывод "Температура = ", температура
      кон
    </example>
  </alg>
  <alg name="радиация">
    <description>
      Возвращает радиацию в клетке, на которой стоит робот.
    </description>
    <example>
      использовать Робот
      алг 
      нач
      . вывод "Радиация = ", радиация
      кон
    </example>
  </alg>
</module>
