Исполнитель РОБОТ. Урок 5. 15.05
Условная конструкция
Общий вид ветвления (неполная форма):
если условие то
серия команд
всё
Общий вид ветвления (полная форма):
если условие
то
серия команд_1
иначе
серия команд_2
всё
Создавая циклы с условием для Робота , можно использовать 10 команд проверки условий:
– 8 команд вида [слева/справа/снизу/сверху] [стена/свободно]
– 2 команды вида клетка [закрашена/чистая]
Пример 1. Робот находится в узком горизонтальном коридоре. Где-то правее робота из коридора есть выход, расположенный сверху или снизу коридора. Доведите робота до выхода из коридора.
На рисунках представлены возможная стартовая обстановка и результат.
Вариант решения: использовать Робот алг Выход из коридора нач нц пока сверху стена и снизу стена и справа свободно вправо если сверху свободно то вверх иначе если снизу свободно то вниз все все кц кон |
Пояснения к решению Цикл с условием для продвижения вправо сдвиг вправо проверка, есть ли выход сверху выход в проход сверху проверка, есть ли выход снизу выход в проход снизу |
Пример 2. Робот находится в одной из двух клеток прямоугольного поля размером 1x2. Переведите робота в соседнюю клетку.
Вариант решения: использовать Робот алг Переход в соседнюю клетку нач . если сверху свободно . . то . . . вверх . . иначе . . . если снизу свободно . . . . то . . . . . вниз . . . . иначе . . . . . если справа свободно . . . . . . то . . . . . . . вправо . . . . . . иначе . . . . . . . влево . . . . . все . . . все . все кон |
Пояснения к решению проверка, можно ли пройти вверх переход вверх проверка, можно ли пройти вниз переход вниз проверка, можно ли пройти вправо переход вправо переход влево |
Задание ДЗ. Робот находится в левом конце горизонтального коридора, идущего вправо. Нижняя стена коридора сплошная, а в верхней стене есть несколько выходов. Напишите алгоритм, который перемещает робота к правому концу коридора, и при этом робот закрашивает все клетки коридора, из которых есть выходы вверх. Написать алгоритм, сохранить в файле цикл-ветвление.kum, прислать на почту. Срок 15.05