Л.р. 7 Цикл с предусловием (цикл ПОКА)
Цикл «пока»
Общий вид цикла пока:
нц пока условие
· тело_цикла
кц
При выполнении цикла пока КУМИР циклически повторяет следующие действия:
∙ Проверяет записанное после служебного слова пока условие.
∙ Если условие не соблюдается, то выполнение цикла завершается и КуМир начинает выполнять команды, записанные после кц.
Если же условие соблюдается, то КуМир выполняет тело цикла, снова проверяет условие и т.д.
Пример:
нц пока а<10
· а := а + 1
кц
В теле цикла может быть использована команда выход.
Команда выход используется для выхода из цикла или для окончания работы текущего алгоритма. Если команда выход выполняется внутри цикла, то выполнение продолжается с первой команды после тела этого цикла. Если команда выход используется во вложенных циклах, то завершается самый внутренний цикл. Если команда выход выполняется вне циклов, то она приводит к завершению выполнения текущего алгоритма.
Задание 1.
Необходимо перевести Робота из начального положения (◊) в точку A, закрашивая при этом указанные клетки поля. Размеры стен и расстояние между ними могут быть произвольны.
Стартовая обстановка представлена на рисунке 1. Пример программы и результат на рисунке 2.
Рисунок 1.
Рисунок 2.
Задание 2.
Где-то в поле Робота находятся две стены равной, но неизвестной длины. В правой стене имеется отверстие шириной в одну клетку. Робот из произвольной клетки справа от правой стены, но обязательно напротив нее, должен дойти до стены и закрасить все клетки между двумя стенами, как показано на рисунке.
Стартовая обстановка представлена на рисунке 3. Пример программы и результат на рисунке 4.
Рисунок 3.
Рисунок 4.