Исполнитель Робот. Цикл с условием.

Исполнитель Робот: цикл с условием, иллюстрация к статье.

⏱ 2:44

Цикл с условием, использование алгоритмов с условиями в обстановках с неизвестным расстоянием до препятствий.
—
Заходите на портал ПедОбраз:
https://педобраз.рф

Используйте PyKumir:
https://pykumir.ru
https://кумир-онлайн.рф

Подписывайтесь на YouTube канал:
https://www.youtube.com/@PedObraz

Подписывайтесь на TG канал:
https://t.me/PyKumir

Подписывайтесь на Boosty:
https://boosty.to/bormotoon

▶ Смотреть на YouTube

Конспект

О чём это видео

Оглавление конспекта
  1. Использование циклов с условием
  2. Логика цикла «пока»
  3. Движение вдоль стены
  4. Дополнительные задачи в цикле

Использование циклов с условием

Добрый день! В этом видео мы с вами разберем, как в исполнителе робота используются циклы с условием. Для чего обычно используют у нас такие циклы?

Например, вот у нас есть робот и есть стена. Стена неизвестна какой длины, и неизвестно какое расстояние до этой стены. Мы должны написать такое условие, при котором даже при этом неизвестном расстоянии — хоть оно было бы там, допустим, 2 клеточки, 3 клеточки, 4 — неважно, для любого такого расстояния — наш алгоритм всё равно смог работать.

Логика цикла «пока»

Как же это нужно сделать? Мы сначала описываем всё точно так же, как и обычно. Однако у нас есть такой цикл, который называется «пока», то есть на клавиатуре While.

Например, пока сверху свободно, то есть пока у нас сверху над нашим роботом не появится стена, мы будем идти вверх. Смотрите, нельзя сказать «пока снизу свободно». Потому что если вы будете в этой клеточке стоять, то здесь снизу всё равно свободно, и робот разобьется, если будет идти дальше вверх. Справа-слева нам тоже не подходит. Нам нужно подойти сначала к стенке, а потом уже идти на базу.

Движение вдоль стены

После этого что мы должны сделать? Пока сверху стена, то есть дальше нам необходимо двигаться вдоль стены. Мы не можем написать «пока справа свободно», потому что если мы напишем «пока справа свободно», то мы можем пропустить нашу клеточку с базой. Возможно, здесь расстояние не одна клетка, а 2, 3, 10, то есть неизвестное расстояние до этой стенки.

Поэтому мы двигаемся именно вдоль стены и только на неё опираемся. Пока сверху стена, мы с вами будем двигаться вправо. И только после этого нам необходимо подняться на одну клеточку вверх.

Дополнительные задачи в цикле

Если же у вас стоит задача, что нужно ещё и закрасить клетки в то время, когда идёшь до стены, то вам необходимо добавить одно действие в сам цикл. То есть пока сверху свободно, мы будем идти не просто вверх, мы будем с вами ещё и закрашивать нашу клетку. То есть: вверх, закрасить.

В последней клетке он проверит: здесь свободы сверху нет, поэтому нам нужно будет двигаться точно так же, как и в предыдущем видео: вправо. То есть пока сверху стена, мы с вами двигаемся вправо и наверх. На выполнение каждой итерации приходится соответствующее количество задач.