ФТК СЮТ

Блок "Сравнение"

12.05.2020Бильченко Александр3 просмотров

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

Это сокращённый способ: мы используем режим блока "Переключатель", в котором сравнение встроено по умолчанию. Расширенный способ выглядит так:

В блоке "Переключатель" выбран режим "Логическое значение": если по зелёному проводку придёт значение "Истина", будет выполнена верхняя ветка, "Ложь" - нижняя. Про логические переменные у нас будет отдельное занятие, пока достаточно понять, что по проводу передаётся результат ответа на вопрос ("Да" или "Нет"). А вопрос этот находится в блоке "Сравнение". У этого блока есть несколько разных режимов, это и есть разные вопросы: "Больше ли?", "Меньше ли?", "Равно ли?" и так далее. Сейчас блок стоит в режиме "Меньше", и значения, которые он сравнивает - это показания датчика и число 20. Таким образом, если показания меньше 20, он на вопрос "Меньше ли?" ответит "Да", по зелёному проводу будет передано значение "Истина", и переключатель выполнит верхнюю ветку. Если показания будут равны 20 или больше, то на вопрос "Меньше ли?" будет получено значение "Нет", по проводу передастся "Ложь", и переключатель выполнит нижнюю ветку.
В этой программе нет блоков "Ждать": цикл повторяется постоянно, несколько сотен раз в секунду, за одним исключением (каким? напишите в комментариях, и получите дополнительные очки!). Ни блок "Датчик", ни блок "Сравнение", ни блок "Переключатель" не останавливают работу программы.
Вот ещё одна программа, похожая на предыдущую:

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

Комментарии

Загружаем…

Войдите, чтобы оставить комментарий.

← Ко всем статьям