C++. Робот. Цикл с условием "пока"


Проверяем обстановку 

Робот имеет датчики, которые позволяют ему получать информацию об обстановке.
Датчики определяют, например, есть ли стена в каком-то направлении. Чтобы использовать датчики, роботу необходимо дать специальную логическую команду.
 
Логическая команда - это условие, которое может быть верным (истинным) или неверным (ложным).

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

В программировании есть специальная циклическая конструкция, которая повторяет действия пока какое-либо условие выполняется.  Такая конструкция называется циклом с условием. В общем виде на языке C++ ее можно записать так:
 
пока (логическое_условие)
{
    команда_1;
    команда_2;
    ...
}

Выполнение всех команд будет повторяться пока выполняется логическое условие. Если логическое условие верно (датчик сработал), то команды записанные внутри конструкции пока выполнятся. Если условие не выполнилось, то команды перестают выполняться и цикл заканчивается. Выполняться будут следующие после цикла команды, если они есть в программе.

Логические команды, которые знает робот Сильвер приведены ниже.
стена_сверху, стена_справа, стена_снизу, стена_слева.

Можно проверять противоположные условие (например, что-то делать, если датчик не сработал). В этом случае, перед логическим условием необходимо поставить слово not (логическое отрицание - не). 
Например, программа

пока (not стена_сверху)
{
    вверх;
}

 
заставит робота идти вверх, пока он не встретит стену сверху. Робот остановится около стены.